• ベストアンサー

create database

mysqlにログインできるのですが create databaseが実行できません。 myphpadminでも、新規データベースの作成に「特権なし」と表示されています。 以前は、作成できていたのですが、できなくなったのは、どのようなことが原因として考えられるのでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • calltella
  • ベストアンサー率49% (317/635)
回答No.2

ERROR 1142: select command denied to user: 'root@localhost' for table 'user' ↑Select権限もないみたいですね。 grant select on user.mysql to root@localhost identified by "password"; ↑これを実行して 再度、SELECT * FROM mysql.user WHERE User='ユーザ名';を実行してみてください。

poteb-cho
質問者

お礼

回答ありがとうございました。 レンタルサーバ(GMO)のOS管理ソフトPLESKで データベースを作成し、それを操作できるユーザを登録するという しくみを使ったため、rootユーザ名義がシステム権限をもつのではなく adminユーザ名義がシステム権限を持つということが GMO担当の説明でわかりました。 が、しかし、ご回答のように grantコマンドを使って、操作権限を登録できること、大変勉強になりました。 ありがとうございました。

その他の回答 (1)

  • calltella
  • ベストアンサー率49% (317/635)
回答No.1

何も設定変更していなくていきなり出来なくなったと言う事は無いハズです。 SELECT * FROM mysql.user WHERE User='ユーザ名'; ↑ご自分の権限を確認してみてください。 再度、ご質問の際にはもっと詳しく状況の説明をお願いします。

poteb-cho
質問者

お礼

回答ありがとうございます。 root名でログインしていますが ERROR 1142と返ってきます。 $ mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 385745 to server version: 3.23.58 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> SELECT * FROM mysql.user WHERE User='root'; ERROR 1142: select command denied to user: 'root@localhost' for table 'user' mysql>

関連するQ&A