授予 mysql 远程访问权限

授予 mysql 远程访问权限

您好,我在一台安装了 nginx + mysql + php-fpm 的 Centos VPS 上。我试图允许从我的另一台 VPS 远程访问这台机器上的数据库。

我尝试了以下步骤。

  • 修改了/etc/my.cnf文件,然后在[mysqld]块中添加了以下行bind-address = *
  • 使用命令保存并重新启动mysql服务/etc/init.d/mysqld restart
  • 登录mysql并创建一个名为偏僻的和密码说经过
  • 输入“使用社交”命令并尝试运行该命令,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)

有人能告诉我为什么我会遇到这个错误吗?即使出现这个错误后,我仍然可以登录并创建用户,甚至可以使用相同的用户名、root 和相同的密码对数据库进行操作!!

答案1

使用此命令,您可以创建另一个 root 用户

 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';

相关内容