跳至主要內容

Ubuntu22 安装 mysql

Loclinklinuxmysqlubuntu原创大约 2 分钟约 505 字

Ubuntu22 安装 mysql

安装

sudo apt install mysql-server -y

启动 mysql

systemctl start mysql.service

首次免密登录

sudo mysql -uroot

设置 root 密码

进入 mysql 命令行后执行:

alter user 'root'@'localhost' identified with mysql_native_password by '密码';

提示

mysql 命令行中,注意末尾分号不可少。

尝试密码登录

先退出命令行界面

exit

执行登录命令

mysql -u root -p

输入密码后回车,密码正确登录成功:

开启远程访问权限

方式一:改表法

顾名思义,该方法就是直接修改更改 mysql 数据库里的 user 表里的 host 项,从 localhost 改为 %

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

方式二:授权法

通过 GRANT 命令可以授予主机远程访问权限

--赋予任何主机访问权限:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
--允许指定主机(IP地址)访问权限:
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'root' WITH GRANT OPTION;

通过 GRANT 命令赋权后,需要通过 FLUSH PRIVILEGES 刷新权限表使修改生效:

FLUSH PRIVILEGES;

查看远程访问权限配置

select  User,authentication_string,Host from user;

此时,root 已经多了一条记录,且 Host 记录值为%,代表已经开启了 root 的远程访问权限,我们后续就可以通过 root 用户远程访问该 MySQL 了。

提示

出于安全性考虑,尤其是正式环境下

  1. 不推荐直接给 root 开启远程访问权限。 本案例仅以 root 用户作为例子做开启远程访问权限的配置,此为演示环境!

  2. 建议做权限细分和限制 正式环境中,推荐通过创建 Mysql 用户并给对应的用户赋权的形式来开放远程服务权限,并指定 IP 地址,赋权时根据用户需求,在 GRANT 命令中只开放 slect、update 等权限,做到权限粒度最小化。