• ベストアンサー

MySQLでDBが作成できない

データベースを作ろうと create database sample; をしたところ ERROR 1044 (42000): Access denied for user 'user'@'localhost' to database 'sample' というエラーが出て、データベースが作成できません。 いろいろ探して同じような質問を見つけ、やってみたのですが解決できません・・・。 mysqlには mysql -uuser -p で入っています。 よろしくお願いします。

  • MySQL
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

単純にローカルホストでログインしたuserさんには権限がないということでしょう ルート権限ではいってuserに権限を付加するか、ルート権限で処理してみては どうでしょうか?

hinananana
質問者

お礼

すいません やっていたら解決しました・・・ ルート権限でDB(sample)を作って GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE ON `sample`.* TO 'user'@'localhost' DBを書き換えてでできました; ありがとうございました!

hinananana
質問者

補足

userが持っている権限はこのようになっていました GRANT USAGE ON *.* TO 'user'@'localhost' IDENTIFIED BY PASSWORD 'パスワード' GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE ON `test`.* TO 'user'@'localhost' userに追加の権限を与えるにはどうしたら良いのでしょうか? ルート権限での処理はできましたがuserで処理をしたいのです。 よろしくお願いします。

関連するQ&A

  • MYSQLに新しいデータベースの追加

    こんにちは。PHPを使用し、MYSQLに接続、新しいデータベースを追加したいのですが、CREATE DATABASE データベース名で実行をすると Access denied for user ''@'%' to database 'phptest' というエラーが出てしまい、新規データベースを作成することができません。このエラーのよくわからないのところは、localhostにDBの作成時のエラーは'ユーザー名'@'localhost'という感じで出るのに、それ以外で作成しようとすると''@'%'と意味のわからないエラーになってしまいます。これが作成できない理由だと思うのですが、なにかユーザーの追加時等にやらなくてはいけない必要なことが抜けているのでしょうか?お分かりの方おりましたら、ご教授くださいますようお願いいたします。

  • ERROR 1044

    MySQLでデータベースを作成しようと思い、 create database abc; と実行すると、 ERROR 1044 (42000): Access denied for user: ''@'localhost' to database 'abc' とエラーが表示されます。 どうしたらいいんでしょうか?

  • mysql_select_dbでエラーが出ます

    phpのmysql_select_db()でデータベースを選択すると Access denied for user ''@'localhost' to database 'データベース名' とエラーが出ます。 元もとあるtestというデータベースは選択できましたが、 phpmyadminで新たに作成したデータベースだとエラーになります。 エラーの意味と対応方法をご教授下さい。 よろしくお願いします。 環境 さくらインターネットのVPS CentOS php5.1.6 mysql5.0.77 phpMyAdmin2.11.11.1 mysql_connect()ではrootでログイン

    • ベストアンサー
    • MySQL
  • Mysqlで新たにデータベースを作成する方法を教えてください

    こんにちは。WinMEユーザです。 mysql-3.23.58をWinMEマシンにインストールしました。 なお、インストール方法は、 http://tsuttayo.sytes.net/mysql/install/win/ を参考にして、作業しました。 なおここでは便宜上、インストール時に設定するユーザID、パスワードは、それぞれ「usr」「hoge」と表記します。 DOSプロンプトから、 >mysqladmin create newtable と入力しても、 CREATE DATABASE failed; error: 'Access denied for user: '@localhost' to database 'newtable'' というエラーメッセージが表示されてしまい、データベースを新規作成できません。 どのようにしたらデータベースを新規作成できるのか、 ご教示ください。

  • MySQLで新規DB作成時、エラーが表示される

    MySQLで新規データベース作成時、エラーが表示されてしまいます。 初歩的な質問になりますが、MySQLをセットアップしたのち、新規にデータベースを作成 するところでつまずいています。 新規作成する際、エラーが表示されてしまい、新規にデータベースを作成することができま せん。 どのようにすればよいのかわからずに困っております。どのようにすればよいかご存知の 方がいらっしゃいましたら教えてください。 なお、操作手順と使用環境は下記になります。 ■操作手順 MySQL Command Line Client からでも、コマンドプロンプトでも同じ結果になるのですが、 まずrootでログインします。 インストール時にパスワードを付けてないので、パスワードなしでログインしてます。 その後、>show databases; を打ち込みますと、既存のデータベース(インストール時のサ ンプル)が表示されます。もちろん、その中のテーブルも見れます。 この状態で「 samplebd 」という名称のdbを新規に作成しようとして、 >create database sampledb; としますと、下記のようなエラーが表示されてしまいます。 ■エラーメッセージ ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'samplebd' ■環境 Windowsserver2008 Apach,PHP,MySQL を構築してあります。 クライアントPC(Win7)からリモートデスクトップでアクセスしたり、直接サーバで操作を 行ったりもしますが、現象は変わらずエラーがでます。 よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • MySQLでのこと

    CREATE DATABASE cooking; としたら ERROR 1004 (42000): Access denied foruser ''@'localhost' to database 'cooking' と出ました。 どこが悪いんでしょうか・・・ お願いします

    • ベストアンサー
    • MySQL
  • [MySQL] rootの権限を消してしまった

    何を血迷ったか、 REVOKE ALL PRIVILEGES ON * . * FROM "root"; とやってしまい、 create database test; ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'test' といっか感じでエラーを吐いてしまいます。 GRANTで権限を与えようにも、同様にエラーを吐いてしまいどうにもなりません... 助けてください。よろしくお願いします。

    • ベストアンサー
    • MySQL
  • Mysqlに入れません

    PHPのパッケージxamppでMySQL 5.0.51aをインストールしています。 しかしどうあがいてもMySQLに入れません。 C:\xampp\mysql\bin>mysql ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO) C:\xampp\mysql\bin>mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) C:\xampp\mysql\bin>mysql -u root -p root Enter password: **** ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 教えてください。お願いいたします。

    • ベストアンサー
    • MySQL
  • MySQL使えない

    激しくコンピュータに弱いものです。 本やWebを見ながらMySQLをインストール。 その後、(現在登録されているユーザとホスト、パスワードを確認するため、らしい) mysql> select host,user,password from mysql.user; と入力してみるも「ビッ!」と音がして「ERROR 1044: Access denied for user: '@localhost' to database 'mysql'」と表示される。Web中を探し回っても解決方法が見つかりません。 その他、いろいろコマンドを入力しても「ビッ!」と鳴って同じエラー表示が、 サルでも解るような説明求む。 OS:WINXP

  • MySQLにSQLを実行できない

    こんにちは。 今MySQLを勉強中なのですが、以下のようなエラーが解決できずに困っています。 どなたかお助けよろしくお願いいたします。 状況と致しまして、 レンタルサーバーにphpMyAdminを設置し 管理者に与えられたデータベースに「MLB」というテーブルを作成(特権なし)しました。 そこで以下のような単純なphpを組んで読み込んで見ることにトライしたのですが <?php //サーバーに接続 $my_Con = mysql_connect("localhost","データベース名","パスワード"); if($my_Con == false){ die("MYSQLの接続エラー"); }else{ echo "接続成功<br>"; if(mysql_select_db("データベース名",$my_Con)){ echo "データベースにアクセス成功<br>"; $my_Row = mysql("SELECT * FROM MLB",$my_Con); if(!$my_Row){ die(mysql_error()); } while($row = mysql_fetch_array($my_Row)){ echo $row["id"]; echo $row["stadium"]; echo "<br>"; } }else{ die("データベースへのアクセスエラー"); } } ?> 以下のようなエラーが出てしまい解決できない状態です。 接続成功 データベースにアクセス成功 Access denied for user 'データベース名'@'localhost' to database 'SELECT * FROM MLB' これは特権なしが影響しているのかな?とも考えたのですが、 調べてみた所、 _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ root で接続をしようとする場合に、次のようなエラーが出るときには、'root' の User フィールドに、user テーブルのエントリがないことを示します。そのため、mysqld がクライアントのホスト名を識別できない状態です。 Access denied for user ''@'unknown' to database mysql この場合、--skip-grant-tables オプションでサーバを立ち上げ、/etc/hosts ファイル、または \windows\hosts で、ホストのエントリを付加します。 _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ 解決になるらしいのですが、これはレンタルサーバー側に何か問題があるということでしょうか? どのように解決すればよいか、どなたかご教授をよろしくお願いいたします。

    • ベストアンサー
    • MySQL