Mysql初始化root密码和允许远程访问
mysql默认root用户没有密码,输入mysql -u root 进入mysql
1、初始化root密码
进入mysql数据库
1 | mysql>use mysql; |
上述写法适用于 MySQL 5.6 及更早版本。从 MySQL 5.7.6 起,
user表里的密码列由password改名为authentication_string,PASSWORD()函数也在 MySQL 8.0 中被移除。新版请改用:
1
2 mysql>use mysql;
mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
2、允许mysql远程访问,可以使用以下三种方式:
a、改表。
1 | mysql -u root -p |
b、授权。
例如,你想root使用123456从任何主机连接到mysql服务器。
1 | mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; |
上述
GRANT ... IDENTIFIED BY一句话写法在 MySQL 8.0 中已被移除。8.0 要求先创建用户再授权,需分两步:
1
2 mysql>CREATE USER 'root'@'%' IDENTIFIED BY '123456';
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
如果你想允许用户jack从ip为10.10.50.127的主机连接到mysql服务器,并使用654321作为密码
1 | mysql>GRANT ALL PRIVILEGES ON *.* TO 'jack'@'10.10.50.127' IDENTIFIED BY '654321' WITH GRANT OPTION; |
c:在安装mysql的机器上运行:
进入MySQL服务器
1 | d:\mysql\bin\>mysql -h localhost -u root |
赋予任何主机访问数据的权限
赋予任何主机访问数据的权限
1 | mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; |
使修改生效
1 | mysql>FLUSH PRIVILEGES; |
退出MySQL服务器
1 | mysql>EXIT |
转自博客园