131

SHOW GRANTSmysqlデータベースで実行すると、次のようになります。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' 
    IDENTIFIED BY PASSWORD 'some_characters' 
    WITH GRANT OPTION

私が間違っていない場合、ユーザーはからのみサーバーにアクセスできることroot@localhostを意味します。(同じネットワーク内の)他のすべてのマシンからこのmysqlサーバーにアクセスするためのアクセス許可を付与するようにMySQLに指示するにはどうすればよいですか?rootlocalhostroot

4

11 に答える 11

148

これにより、 内の任意のマシンから同じパスワードでルート アクセスが許可されます*.example.com

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%.example.com' 
    IDENTIFIED BY 'some_characters' 
    WITH GRANT OPTION;
FLUSH PRIVILEGES;

名前解決が機能しない場合は、IP またはサブネットによるアクセスを許可することもできます。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.%'
    IDENTIFIED BY 'some_characters'  
    WITH GRANT OPTION;
FLUSH PRIVILEGES;

MySQLGRANT構文ドキュメント。

于 2011-06-04T20:17:38.360 に答える
99

試す:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Pa55w0rd' WITH GRANT OPTION;
于 2013-04-04T20:41:32.613 に答える
38
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' 
    IDENTIFIED BY 'YOUR_PASS' 
    WITH GRANT OPTION;
FLUSH PRIVILEGES;  

*.* = DB.TABLEユーザーを特定のデータベースと特定のテーブルに制限できます。

'root'@'%'作成した任意のユーザーでルートを変更でき、% はすべての IP を許可します。%.168.1.1 などを変更して制限することもできます。


それでも解決しない場合は、my.cnf または my.ini も変更して、これらの行にコメントを付けます

bind-address = 127.0.0.1#bind-address = 127.0.0.1

skip-networking#skip-networking

  • MySQL を再起動し、上記の手順をもう一度繰り返します。

Raspberry Pi の下に bind-address 設定が見つかりました\etc\mysql\mariadb.conf.d\50-server.cnf

于 2014-12-25T07:04:30.743 に答える
0

これは私にとってはうまくいきました。しかし、最初に試してみても影響がないという奇妙な問題がありました。phpmyadmin ページを更新し、何とか動作するようにしました。

local-xampp-mysql へのアクセスが必要な場合。xampp-shell -> コマンドプロンプトを開くことができます。

次に、mysql -uroot -p --port=3306 または mysql -uroot -p (パスワードが設定されている場合)。その後、mysql シェル ページからこれらのアクセスを許可できます (localhost/phpmyadmin からも機能します)。

誰かがこのトピックを見つけて初心者の問題を抱えている場合は、これらを追加するだけです。

于 2016-03-07T11:20:34.763 に答える