0

最近cPanelでVPSをセットアップしました。

ユーザーを作成してデータベースを作成したので、データベースをインポートしたいと思います。

ただし、試してみるとエラーメッセージが表示されます

#1044 - ユーザー 'user'@'localhost' のデータベース 'database' へのアクセスが拒否されました

これは WHM で修正できるのではないかと思いますが、まだ試行錯誤する気はありません。これを修正するにはどうすればよいですか?

4

3 に答える 3

1

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_databasedatabase

Error

SQL query:

CREATE DATABASE user_database;

MySQL said: Documentation
#1044 - Access denied for user 'user'@'localhost' to database 'user_database'

cPanel を使用する場合、cPanel 自体にデータベースを作成する必要があります。

この問題を修正する手順は次のとおりです。

  1. user_databasecPanel 内にデータベースを作成する
  2. CREATE DATABASE私の .sql ファイルのコマンドをコメントアウトします

    これを行うには、次のように変更するだけです。

    CREATE DATABASE database;

    -- CREATE DATABASE database;

    実行されないように、行の先頭に追加dash-dash-spaceしてコメントアウトするだけです。

  3. phpMyAdmin にログインし、user_databaseデータベースにアクセスして、通常どおりインポートします。

于 2012-12-23T00:34:12.497 に答える
0

データベースをダンプする前に、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 にインポートできるはずです。

于 2013-10-08T17:43:24.773 に答える
-1

公式にするには…

インポートしようとしているファイルには、権限のないものが含まれている可能性があります。権限を確認してから、インポートするファイルを確認します。

于 2012-12-22T22:58:58.807 に答える