您的位置:首页 > 运维架构 > Linux

linux mysql 初始化密码&丢失密码重新设置&添加远程连接支持

2018-05-20 16:31 537 查看

一、初始化密码

方法1: 用SET PASSWORD命令

mysql -u root
mysql> SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘newpass’);


  

方法2:用mysqladmin
  

mysqladmin -u root password “newpass”
如果root已经设置过密码,采用如下方法
mysqladmin -u root password oldpass “newpass”


方法3: 用UPDATE直接编辑user表

mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD(‘newpass’) WHERE user = ‘root’;
mysql> FLUSH PRIVILEGES;


二、丢失root密码,设置root密码

方法1:

mysqld_safe –skip-grant-tables&
mysql -u root mysql
mysql> UPDATE user SET password=PASSWORD(“new password”) WHERE user=’root’;
mysql> FLUSH PRIVILEGES;



方法2:

1、修改mysql的配置文件(默认为/etc/my.cnf),在[mysqld]下添加一行skip-grant-tables

2、保存配置文件后,重启mysql服务 service mysqld restart

3、mysql -u root -p登录mysql,然后不输入密码直接回车,然后按照上面的流程修改密码

4、密码修改完毕,按照流程1的删除配置文件中的那行,然后重启mysql服务

三、启动MySQL远程访问权限,允许远程连接

1. 实现远程连接(授权法)

将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。
update user set host = ’%’ where user = ’root’;

将权限改为ALL PRIVILEGES

mysql> use mysql;
Database changed
mysql> grant all privileges on *.* to root@'%' identified by "password";
Query OK, 0 rows affected (0.00 sec)

mysql> select host,user,password from user;

2. 实现远程连接(改表法)

use mysql;

update user set host = '%' where user = 'root';

这样在远端就可以通过root用户访问Mysql.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息