Linux ubuntu安装mysql

学点Data站:https://yellowcan.cn

学点笔录:https://code.yellowcan.cn

一、更新软件源

Bash 复制代码
sudo apt update && sudo apt upgrade -y

二、安装 MySQL 服务端

Bash 复制代码
sudo apt install mysql-server -y

三、检查服务状态

Markdown 复制代码
# 查看运行状态
sudo systemctl status mysql

# 手动启停命令
sudo systemctl start mysql
sudo systemctl stop mysql
sudo systemctl restart mysql
# 设置开机自启(默认已开启)
sudo systemctl enable mysql

四、安全初始化(必做,加固数据库)

Bash 复制代码
sudo mysql_secure_installation

交互步骤参考:

  1. VALIDATE PASSWORD COMPONENT:密码强度校验,按需输入n 关闭
  2. 设置 root 数据库密码(牢记)
  3. Remove anonymous users?y 删除匿名用户
  4. Disallow root login remotely?:本地使用填y;需要远程连接填n
  5. Remove test database and access to it?y 删除测试库
  6. Reload privilege tables now?y 刷新权限

五、本地登录 MySQL

方式 1:sudo 免密登录(推荐本地管理)

Bash 复制代码
sudo mysql
  1. sudo 进入数据库
text 复制代码
sudo mysql
  1. 执行 SQL(替换你的密码

    先查看mysql版本

SQL 复制代码
mysql --version
复制代码
MySQL 8.4之前的版本使用
SQL 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
FLUSH PRIVILEGES;
exit;
复制代码
MySQL 8.4+ 版本(Ubuntu 24.04 默认),新版本默认直接禁用了`mysql_native_password`旧插件,所以执行这条 SQL 会报`Plugin not loaded`。

报错ERROR 1524 (HY000): Plugin 'mysql_native_password' is not loaded

MySQL 8.4+的版本改用官方默认安全插件 caching_sha2_password(无需改配置、不用重启)
SQL 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '你的密码';
FLUSH PRIVILEGES;
exit;
  1. 现在可密码登录
SQL 复制代码
mysql -u root -p

六、配置远程访问(外部工具连接数据库)

1.修改配置文件

Bash 复制代码
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

找到bind-address = 127.0.0.1,修改为:

YAML 复制代码
bind-address = 0.0.0.0

保存退出:esc→ 输入:wq

2.创建允许远程登录的账号

登录 MySQL

Bash 复制代码
mysql -u root -p

创建远程用户(% 代表任意 IP)

SQL 复制代码
CREATE USER 'root'@'%' IDENTIFIED BY '你的密码';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;

3.重启 MySQL

Bash 复制代码
sudo systemctl restart mysql

4.放行端口(3306)

有防火墙的前提下

Markdown 复制代码
# 开放3306端口
sudo ufw allow 3306/tcp
# 查看防火墙规则
sudo ufw status

云端服务器,有需要远程登录,去安全组放行端口

七、常用操作

查看 MySQL 版本

SQL 复制代码
mysql --version
# 或进入数据库查看
SELECT VERSION();

停止服务

Bash 复制代码
sudo systemctl stop mysql

结束进程并重启服务

Bash 复制代码
sudo pkill mysqld
sudo systemctl start mysql

八、卸载 MySQL

Bash 复制代码
sudo apt remove mysql-server mysql-client -y
sudo apt autoremove -y
# 彻底删除数据(谨慎执行,所有库清空)
sudo rm -rf /var/lib/mysql /etc/mysql