最近cPanelでVPSをセットアップしました。
ユーザーを作成してデータベースを作成したので、データベースをインポートしたいと思います。
ただし、試してみるとエラーメッセージが表示されます
#1044 - ユーザー 'user'@'localhost' のデータベース 'database' へのアクセスが拒否されました
これは WHM で修正できるのではないかと思いますが、まだ試行錯誤する気はありません。これを修正するにはどうすればよいですか?
最近cPanelでVPSをセットアップしました。
ユーザーを作成してデータベースを作成したので、データベースをインポートしたいと思います。
ただし、試してみるとエラーメッセージが表示されます
#1044 - ユーザー 'user'@'localhost' のデータベース 'database' へのアクセスが拒否されました
これは WHM で修正できるのではないかと思いますが、まだ試行錯誤する気はありません。これを修正するにはどうすればよいですか?
phpMyAdmin を使用してデータベースをインポートする場合、通常、.sql
拡張子を付けたテキスト ファイルをインポートします。以下は、.sql データベースのバックアップに含まれる可能性があるコードのセクションです。あなたの例では、インポートしようとしているデータベースの名前はデータベースです。
-- phpMyAdmin SQL Dump
-- version 2.11.9.5
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Apr 02, 2010 at 08:01 AM
-- Server version: 5.0.81
-- PHP Version: 5.2.6
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
CREATE DATABASE database;
-- --------------------------------------------------------
--
-- Table structure for table `table`
--
CREATE TABLE IF NOT EXISTS `table` (
`column1` text NOT NULL,
`column2` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
phpMyAdmin を使用してそのようなファイルをインポートしようとすると、次のようなエラー メッセージが表示されます。
Error
SQL query:
CREATE DATABASE database;
MySQL said: Documentation
#1044 - Access denied for user 'user'@'localhost' to database 'database'
このシナリオでは、cPanel ユーザー名はuser
. cPanel のデータベース命名規則により、すべてのデータベース名は cPanel ユーザー名で始まり、その後に_
. この形式を使用すると、 という名前のデータベースのみを作成できますuser_database
。
このインポートが失敗した理由は、.sql ファイルの次の行のためです...
CREATE DATABASE database;
という名前のデータベースは作成できませんが、 という名前database
のデータベースは作成できますuser_database
。
次の行を変更すると、代わりに次のメッセージが表示されCREATE DATABASE
て失敗します。user_database
database
Error
SQL query:
CREATE DATABASE user_database;
MySQL said: Documentation
#1044 - Access denied for user 'user'@'localhost' to database 'user_database'
cPanel を使用する場合、cPanel 自体にデータベースを作成する必要があります。
この問題を修正する手順は次のとおりです。
user_database
cPanel 内にデータベースを作成するCREATE DATABASE
私の .sql ファイルのコマンドをコメントアウトします
これを行うには、次のように変更するだけです。
CREATE DATABASE database;
に
-- CREATE DATABASE database;
実行されないように、行の先頭に追加dash-dash-space
してコメントアウトするだけです。
phpMyAdmin にログインし、user_database
データベースにアクセスして、通常どおりインポートします。
データベースをダンプする前に、Cpanel で作成した新しいデータベース ユーザーに、そのユーザーと同じパスワードでフル アクセスを許可します。
grant all on database_name.* to database_user@localhost identified by 'password';
次に、.sql ファイルを変更し (notepad++ を使用できます)、新しいデータベースを作成して使用する部分をコメントアウトする必要があります。
-- Database:
dbname
--
-- CREATE DATABASE IF NOT EXISTS dbname
DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
-- USE dbname
;
その後、Cpanel にインポートできるはずです。
公式にするには…
インポートしようとしているファイルには、権限のないものが含まれている可能性があります。権限を確認してから、インポートするファイルを確認します。