首先,我们切换root用户(也可以用sudo提权)
Ubuntu22的apt源默认是可以使用国内的,可以不做更改,我们直接安装MySQL服务和客户端
apt-get install -y mysql-server mysql-client
安装完成后对MySQL进行初始化,嫌麻烦可以直接全部无脑回车
# 初始化 MySQL
mysql_secure_installation
进入MySQL视图
# 登入 MySQL
mysql -uroot
我们选择数据库 mysql
use mysql
然后查询用户配置情况
select user, host, plugin from user;
通过下图可以发现,root的可登录主机以及身份验证方式仅支持本地
修改root可以登录的主机为所有
update user set host='%' where user='root';
然后对权限进行刷新
flush privileges;
其次我们还要修改root的身份验证方式,在MySQL8中,auth_socket 只支持本地登录,我们需要将其修改为 mysql_native_password 方式,并设置密码,然后再刷新权限
# Abc123456 为你的密码
alter user 'root'@'%' identified with mysql_native_password by 'Abc123456';
# 再次刷新权限
flush privileges;
更改可登入主机以及身份验证方式后,下面进行提权
grant all on *.* to 'root'@'%' ;
flush privileges;
修改完成之后我们 CTRL + D退出 MySQL视图
编辑 MySQL 配置文件 vim /etc/mysql/mysql.conf.d/mysqld.cnf
将第31行的 bind-address 注释
保存退出,然后重启 MySQL 服务,systemctl restart mysql.service
下面以 DataGrip连接 MySQL为例,连接数据库
点击测试连接,成功后会出现下图成功提示,在输入一次密码,点击确认
在左侧导航栏即可看到我们的数据库,点击名称后面的数据方框,可以选择性展示数据库