linux安装mysql说明
1. 前置操作
# 停止可能的 MySQL 服务
sudo systemctl stop mysql
sudo systemctl stop mysqld# 移除旧版本 MySQL(如果存在)
sudo apt remove --purge mysql-server mysql-client mysql-common -y
sudo apt autoremove -y
sudo apt autoclean# 删除配置文件和数据
sudo rm -rf /etc/mysql /var/lib/mysql
sudo rm -rf /var/log/mysql# 清理残留配置
sudo apt remove --purge mysql*
2. 安装命令
1. 更新包索引
sudo apt update2. 安装MySQL服务器
sudo apt install mysql-server3. 启动MySQL服务
sudo systemctl start mysql4. 设置MySQL开机自启
sudo systemctl enable mysql
3. 启动服务
# 启动 MySQL 服务
sudo systemctl start mysql# 停止 MySQL 服务
sudo systemctl stop mysql# 重启 MySQL 服务
sudo systemctl restart mysql# 重新加载配置(不重启服务)
sudo systemctl reload mysql# 查看服务状态
sudo systemctl status mysql# 设置开机自启
sudo systemctl enable mysql# 禁用开机自启
sudo systemctl disable mysql
4. 检查服务状态
# 详细状态信息
sudo systemctl status mysql -l# 检查是否正在运行
sudo systemctl is-active mysql# 检查是否启用开机启动
sudo systemctl is-enabled mysql
5. 连接 MySQL
# 使用 root 用户连接
sudo mysql -u root -p# 或者直接连接(如果使用 auth_socket)
sudo mysql# 远程连接(如果需要)
mysql -h 主机IP -u 用户名 -p
6. 设置初始登陆密码
1. 第一步使用无密码方式,先登录mysql
# 直接登录设置(如果当前无密码)
sudo mysql -u root2. 进入mysql命令行输入以下命令,设置登录密码-- 刷新权限
FLUSH PRIVILEGES;-- MySQL 5.7.6 及以上版本使用:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';-- MySQL 5.7.5 及以下版本使用:
UPDATE mysql.user SET authentication_string = PASSWORD('你的新密码') WHERE User = 'root';-- 刷新权限
FLUSH PRIVILEGES;-- 退出
EXIT;
7. 创建新用户
-- 创建只能本地连接的用户
CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';-- 创建可以从任何主机连接的用户(谨慎使用)
CREATE USER '用户名'@'%' IDENTIFIED BY '密码';-- 创建可以从特定 IP 连接的用户
CREATE USER '用户名'@'192.168.1.100' IDENTIFIED BY '密码';-- 创建可以从网段连接的用户
CREATE USER '用户名'@'192.168.1.%' IDENTIFIED BY '密码';
8. 设置可远程连接
- 将默认本地连接地址改为 0.0.0.0

配置文件地址:
/etc/mysql/mysql.conf.d/mysqld.cnf
- 防火墙配置
# 开放 MySQL 端口(默认 3306)
sudo ufw allow 3306/tcp######################################################
以下命令可做参考,可以不用执行# 或者从特定 IP 允许
sudo ufw allow from 192.168.1.100 to any port 3306# 检查规则
sudo ufw status numbered# 启用防火墙(如果未启用)
sudo ufw enable
9. 设置用户可远程登录连接
- 登录 MySQL 并检查现有用户
# 登录 MySQL
sudo mysql -u root -p
- 查看现有用户和权限
-- 查看所有用户及其主机
SELECT user, host FROM mysql.user;-- 查看特定用户的权限
SHOW GRANTS FOR 'root'@'localhost';
SHOW GRANTS FOR 'root'@'%';
- 创建或修改用户允许远程连接
- 方案一 修改 root 用户允许远程连接(不推荐生产环境)
-- 查看 root 用户的当前设置
SELECT user, host FROM mysql.user WHERE user = 'root';-- 如果 root 只有 localhost 访问权限,创建新的 root@% 用户
CREATE USER 'root'@'%' IDENTIFIED BY '你的root密码';-- 或者修改现有 root 用户的主机
UPDATE mysql.user SET host='%' WHERE user='root';-- 授予权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;FLUSH PRIVILEGES;
- 方案二 创建新用户用于远程连接
-- 创建新用户,允许从任何 IP 连接
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'StrongPassword123!';-- 授予权限
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;-- 刷新权限
FLUSH PRIVILEGES;
10. 远程连接测试
- 本地使用DBever连接


点及finishih出现如下显示,就表示远程连接成功

