您好,我在一台安装了 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';