Ubuntu18.04下安装mysql 5.7

ubuntu 18.04安装mysql相较ubuntu 16.04会有一些问题出现,在此记录这一安装及配置过程。

1、安装数据库

sudo apt-get install mysql-server 执行完成后即可,安装后默认是启动了mysql服务的

2、登录

首次登录时,mysql的用户名和密码在 /etc/mysql/debian.cnf 内写着

使用以上用户名和密码即可登录数据库了,如:

mysql -u debian-sys-maint -pLU2R2jGXF5NkUGIN

注意查看各自的用户名和密码

3、修改root密码

use mysql;

update mysql.user set authentication_string=password('root') where user='root' and Host='localhost';

执行上述语句可能会报错Your password does not satisfy the current policy requirements

解决办法:

1、查看mysql密码策略

SHOW VARIABLES LIKE 'validate_password%';

修改策略

set global validate_password_policy=LOW;# 设置密码的验证强度等级 LOW

set global validate_password_length=5;# 设置密码长度,自行指定

然后再执行上边的修改root密码语句,再执行下边的语句

update user set plugin="mysql_native_password";

flush privileges;

quit;

之后就可以使用root用户和刚才设置的密码登录了。

4、远程登录

进入mysql执行命令:

UPDATE mysql.user SET host="%" WHERE user="root"; #设置允许root账号可以在任意host登录

grant all privileges on *.* to root@'%' identified by '12345678' with grant option;

flush privileges;

quit;

修改mysql配置文件

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

查看防火墙是否允许3306端口被访问

sudo ufw status# 查看防火墙状态,如果关闭状态,就无需设置端口了

# 如果开启防火墙了,添加允许规则如下

sudo ufw allow 3306/tcp

# 关闭防火墙命令

sudo ufw disable

# 开启防火墙

sudo ufw enable

以上配置完成后,即可远程登录mysql了


如果用Navicat远程访问的时候报1698 access denied for user 'root'@'' mysql……错误

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

然后在这个配置文件中的[mysqld]这一块中加入skip-grant-tables这句话。

保存:wq,退出。输入:service mysql restart,重新启动mysql。

你可能感兴趣的:(Ubuntu18.04下安装mysql 5.7)