MySQL安装与配置

安装MySQL

参考信息

安装思路

1. 安装命令

sudo apt update
sudo apt install mysql-server 

2. 开启远程连接

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

将31行进行注释或者修改为0.0.0.0

4. 初始化MySQL配置信息

sudo mysql_secure_installation
VALIDATE PASSWORD COMPONENT…(使用密码强度校验组件)输入:n
New Password:(设置新密码,并重复一遍)
Remove anonymous users (删除匿名用户) n
Disallow root login remotely(拒绝远程root账号登录) n
Remove test database and access to it(移除test数据库) n
Reload privilege tables now (现在就重新载入权限表) y

5. 重新启动MySQL

service mysql restart

修改远程登录

进入MySQL

sudo mysql -u root -p # 登录 
use mysql;
update user set host='%' where user='root';  # 修改成可远程登录
FLUSH PRIVILEGES;  # 刷新权限(大小写都可以)

忘记mysql root密码

参考:https://blog.csdn.net/luckytanggu/article/details/80251833

1. 停止mysql服务

$ service mysql stop

2. 修改文件

  • 修改my.cnf文件
# 修改my.cnf文件,在文件新增 skip-grant-tables,在启动mysql时不启动grant-tables,授权表
$ sudo vim /etc/mysql/my.cnf
# 添加下面的内容
[mysqld]
skip-grant-tables
  • 修改mysqld.cnf文件
# 注意:不同 mysql 版本此配置文件位置和名字可能不同
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 找到将bind-address = 127.0.0.1注销​

3. 启动mysql服务

$ service msyql restart

4. 更改mysql root用户密码

$ mysql

# 选择mysql数据库
mysql> use mysql;

# root用户使用mysql_native_password插件
mysql> UPDATE msyql.user SET plugin='mysql_native_password' WHERE User='root';  
# 更改或者添加user表中root用户密码,如果报错就用ALTER语句(ALTER USER 'test'@'localhost' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY '新密码';)
mysql> update mysql.user set mysql_native_password=PASSWORD("123456") where user='root';  
# 允许远程登录
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
mysql> flush privileges;

# 注意:可能不同的数据库版本密码的字段名称不一样
# 我的数据库版本是5.7.21,user表中的密码字段是:authentication_string
mysql> select version();
+-------------------------+
| version()               |
+-------------------------+
| 5.7.21-0ubuntu0.16.04.1 |
+-------------------------+
1 row in set (0.00 sec)

# 可以通过以下命令查看user表的密码字段名称
mysql> show create table userG;

5.再次修改my.cnf文件

$ sudo vim /etc/mysql/my.cnf
# 进行注释,关闭免密码登录
[mysqld]
# skip-grant-tables

6. 再次重启mysql

$ service mysql restart

# 现在我们可以用新root密码登录mysql了
$ mysql -u root -p
Hole yor life get everything if you never give up.
原文地址:https://www.cnblogs.com/1fengchen1/p/14588683.html