나는 cpanel을 통해 생성 된 데이터베이스와 사용자를 가지고있다. (나는 그 사용자를 그 데이터베이스에 추가했고 그 사용자와 암호를 사용하여 그 데이터베이스에 접근 할 수있다.) 나는 cPanel을 통해 그 사용자에게 모든 권한을 부여했다. cpanel의 '현재 데이터베이스'테이블에서 사용자 이름을 클릭하고 모든 권한을 클릭하십시오.)phpmyadmin (cPanel)에서 데이터베이스를 생성 할 수있는 권한을 사용자에게 부여하는 방법은 무엇입니까?
내 응용 프로그램 (PHP- Codeigniter 프레임 워크를 사용하여 작성 됨)에서 해당 데이터베이스에 새 데이터베이스와 테이블을 생성하려고합니다. 그 때문에 나는 데이터베이스와 테이블을 생성하기 위해 Codeigniter dbforge 클래스를 사용하고 있습니다.
$this->load->dbforge();
if ($this->dbforge->create_database($database_name)){
$config['hostname'] = "localhost";
$config['username'] = "user_name";
$config['password'] = "users_password";
$config['database'] = $database_name;
$config['dbdriver'] = "mysql";
$config['dbprefix'] = "";
$config['pconnect'] = TRUE;
$config['db_debug'] = TRUE;
$config['cache_on'] = FALSE;
$config['cachedir'] = "";
$config['char_set'] = "utf8";
$config['dbcollat'] = "utf8_general_ci";
$config['swap_pre'] = '';
$config['autoinit'] = TRUE;
$config['stricton'] = FALSE;
$db_new=$this->load->database($config,TRUE);
$this->db=$db_new;
$this->load->dbforge();
$fields=array(
'id'=>array('type'=>'INT','auto_increment'=>TRUE,'constraint'=>'5'),
'first_name'=>array('type'=>'VARCHAR','constraint'=>'60'),
'last_name'=>array('type'=>'VARCHAR','constraint'=>'60','null' => TRUE),
);
$this->dbforge->add_field($fields);
$this->dbforge->add_key('id',TRUE);
$this->dbforge->create_table('clients');
}
위의 코드를 먼저 데이터베이스를 만들고 현재 데이터베이스로 해당 데이터베이스를로드하는. 이 코드는 로컬 호스트 WAMP 서버에서 완벽하게 작동하지만 난 후 서버에 업로드 할 때 다음과 같은 오류
Error No 1044: Access denied for user 'username'@'localhost' to database 'database_name'
에게 THR 오류가
if ($this->dbforge->create_database($database_name)){
일으킨 코드의 라인을 제공하는 데이터베이스를 만들려고
* 위의 코드에 표시된 데이터베이스 구성 설정에서 'username'과 'password'는 이미 존재하는 데이터베이스 (cPanel을 통해 생성 됨)의 사용자 이름과 암호로 제공됩니다. 그게 문제 야 ...? *.
새 데이터베이스를 만들려고 현재 사용중인 사용자가 모든 권한을 가지고 있습니다. 하지만 'CREATE DATABASE'권한은 거기에 없습니다. 나는 데이터베이스 이름에 'prefix_'(의 cPanel 데이터베이스 명명 형식)
을 사용한 데이터베이스 이름을 지정하는
은 어떻게 기존 사용자를 사용하여 해당 데이터베이스에 dbforge 클래스 및 액세스를 사용하여 데이터베이스를 만들 수 있습니다 .. .?
먼저 슈퍼 사용자를 작성하십시오. CPanel을 통해 새 데이터베이스를 만들 수 있지만 두 데이터베이스에 모두 액세스 할 수있는 사용자를 만들 수 있는지 확신하지 못합니다. 어쩌면 당신은 접대 공급자에게 연락 할 수 있습니까? –
@ Lex- '두 데이터베이스에 액세스 할 수있는 사용자 한 명을 만듭니다.'- cPanel을 통해 데이터베이스를 만들고 cPanel을 통해 기존 사용자를 새로 만든 데이터베이스에 추가해야한다는 것을 의미합니다 ...? – Sanjay