• ベストアンサー

ユーザーのデータベース参照の制限についての質問

MySQLに関する質問なのですが、 データベースが test test2 と2つあるとします。 user1に関しては、test2にあるテーブル以外は見ることができないようにしたいのですが、 rootで接続し mysql> grant all privileges on test2.* to user1@localhost identified by 'xyz'; mysql> flush privileges; とuser1を追加して、一旦ログアウトし user1で接続して、 mysql> use test: mysql> show tables; でtestにあるテーブルを見ることができます。 上記grant文に間違いがあるのでしょうか? よろしくお願いいたします。

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

  • ベストアンサー
noname#24040
noname#24040
回答No.3

すみません。すでにテーブルを作ってたら削除は避けたいですよね。 http://www.dbonline.jp/mysql/user/index4.html に権限の削除に関する詳細が載ってました。参考にしてみてください。

kazubon001
質問者

補足

教えていただいたサイトを手がかりに、色々検索し、mysqlデータベース内のテーブルというものにたどり着きました。 この辺がまだ理解できてないので、このあたりに原因がありそうな気がします。 ちょっと、難解そうなので、また質問させていただくかもしれません。 ですので、もうしばらく締め切らないでおきます。

その他の回答 (2)

noname#24040
noname#24040
回答No.2

mySql の場合、最初から test データベースが設定されていて 全てのユーザーがアクセスできるはずです。 test データベースを削除して作り直すか、他のデータベースを作ってやってみたらどうでしょう。 grant の構文はあってますから大丈夫です。

  • moon_night
  • ベストアンサー率32% (598/1831)
回答No.1

test というTABLE自体の設定で、他のユーザーに公開する設定になっていませんか?

kazubon001
質問者

補足

moon_nightさん、申し訳ありません。 「TABLE自体の設定」というのは、どうすればばわかるんでしょうか? MySQLのリファレンスマニュアルを見ましたが、わかりませんでした。 よろしくお願いいたします。

関連するQ&A