Ubuntu 20.04 安装Mysql Server 8.0以及配置远程登录

1. 安装MySQL并使用默认运维账号登录

sudo apt intall mysql-server-8.0 sudo cat /etc/mysql/debian.cnf # 获取MySQL运维账号密码
mysql -u debian-sys-maint -pxxx # xxx为上述命令中获取的debian-sys-maint用户对应的密码

2. 以下为MySQL命令行:

use mysql; update user set host = ‘%’ where user = ‘root’;
alter user ‘root’@’%’ identified with ‘mysql_native_password’ by ‘xxx’; # 把xxx改成你想设置的密码
grant all privileges  on *.*  to “root”@’%’; flush privileges;

3. 设置MySQL监听IP并重启

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
bind_address = 0.0.0.0
sudo service mysql restart

4. 远程连接需要确认阿里云安全组打开3306端口

5. 创建用户并分配权限

a. 创建用户

CREATE USER ‘website_user’@’%’ IDENTIFIED BY ‘***’;

上述语句中 website_user为用户名, ***为密码

b. 分配权限

GRANT ALL PRIVILEGES ON website.* TO ‘website_user’@’%’;

上述语句中 website_user为用户名, website为库名

c. 刷新权限

FLUSH PRIVILEGES;

d. 备注:

尽量做到以下几点:

不使用root账号访问数据库

每个数据库设置独立账号密码

如果某个账号需要访问所有数据库,将该账号权限设置为只读