mysql给root开启远程访问权限,修改root密码

Posted 与f

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql给root开启远程访问权限,修改root密码相关的知识,希望对你有一定的参考价值。

1.mysql-Server 出于安全方面考虑只允许本机(localhost, 127.0.0.1)来连接访问. 这对于 Web-Server 与 MySql-Server 都在同一台服务器上的网站架构来说是没有问题的. 但随着网站流量的增加, 后期服务器架构可能会将 Web-Server 与 MySql-Server 分别放在独立的服务器上, 以便得到更大性能的提升, 此时 MySql-Server 就要修改成允许 Web-Server 进行远程连接.

2.不用每次都登到服务器去添加修改表,只要用图形化界面即可远程管理。

 

我们可以按照下面的步骤修改:
1, 登录 Mysql-Server 连接本地 mysql (默认只允许本地连接)

 

 

2, 修改 Mysql-Server 用户配置

 
mysql> USE mysql; -- 切换到 mysql DB

Database changed

mysql> SELECT User, Password, Host FROM user; -- 查看现有用户,密码及允许连接的主机

+------+----------+-----------+
| User | Password | Host      |
+------+----------+-----------+
| root |          | localhost |
+------+----------+-----------+
1 row in set (0.00 sec)

 

mysql> -- 只有一个默认的 root 用户, 密码为空, 只允许 localhost 连接
12
mysql> -- 下面我们另外添加一个新的 root 用户, 密码为空, 只允许 192.168.1.100 连接

mysql> GRANT ALL PRIVILEGES ON *.* TO \'root\'@\'192.168.1.100\' IDENTIFIED BY \'\' WITH GRANT OPTION;

 

mysql> -- @\'192.168.1.100\'可以替换为@‘%’就可任意ip访问,当然我们也可以直接用 UPDATE 更新 root 用户 Host, 但不推荐, SQL如下:

mysql> -- UPDATE user SET Host=\'192.168.1.100\' WHERE User=\'root\' AND Host=\'localhost\' LIMIT 1;

mysql> flush privileges;/ /忘记密码 修个/etc/my.cnf后重置密码也需要运行这个,不然sql 运行出错

Query OK, 0 rows affected (0.00 sec)
 

 

修改root密码
mysql> use mysql
 
Database changed
 
mysql> update user set password=PASSWORD(\'123456\') where user=\'root\';
 
Query OK, 0 rows affected (0.00 sec)
 
Rows matched: 1  Changed: 0  Warnings: 0
 
mysql> flush privileges;
 
Query OK, 0 rows affected (0.00 sec)

 

以上是关于mysql给root开启远程访问权限,修改root密码的主要内容,如果未能解决你的问题,请参考以下文章

mysql给root开启远程访问权限

lnmp1.5 mysql数据库开启远程访问权限

开启mysql远程访问权限

mysql开启远程访问权限

Mysql开启远程访问权限

Linux下开启mysql数据库的远程访问权限