
こんにちは。私は nginx + mysql + php-fpm がインストールされた Centos VPS を使用しています。別の VPS からこのマシン上のデータベースへのリモート アクセスを許可しようとしています。
次の手順を試してみました。
- ファイルを変更し
/etc/my.cnf
、[mysqld]
ブロック内に次の行を追加しましたbind-address = *
- コマンドを使用してmysqlサービスを保存して再起動しました
/etc/init.d/mysqld restart
- mysqlにログインし、名前でユーザーを作成しましたリモートパスワードは合格
- 「use social」コマンドを入力してコマンドを実行しようとしました
GRANT ALL PRIVILEGES ON *.* TO remote@'1.2.3.4' IDENTIFIED BY 'pass';
。1.2.3.4はリモートアクセスしたいVPSのIPです。社交データベースから。
エラーは取得されます
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
このエラーが発生した後でも、同じユーザー名、ルート、同じパスワードを使用してログインし、ユーザーを作成し、データベースを操作することはできるのに、なぜこのエラーが発生するのか誰か教えてもらえますか?
答え1
このコマンドで別のルートユーザーを作成します
GRANT ALL PRIVILEGES ON *.* TO remote@'1.2.3.4' IDENTIFIED BY 'pass';
あなたにはmysql dbに対するすべての権限も与えられているからです
GRANT ALL PRIVILEGES ON socialdb.* TO remote@'1.2.3.4' IDENTIFIED BY 'pass';