ubuntu 安装mysql

在 Ubuntu 系统中安装 MySQL 的步骤如下:

步骤 1:更新软件包列表

bash 复制代码
sudo apt update

步骤 2:安装 MySQL 服务器

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

Ubuntu 22.04/20.04 默认安装 MySQL 8.0,早期版本可能默认使用 MariaDB。

如果需要指定旧版本(如 MySQL 5.7),需添加第三方仓库(见文末"扩展说明")。

步骤 3:初始化安全配置

运行安全脚本,设置 root 密码并移除不安全配置:

bash 复制代码
sudo mysql_secure_installation

根据提示完成以下操作:

选择密码强度验证策略(默认按 ENTER 跳过)。

设置 root 用户的密码。

删除匿名用户(选择 Y)。

禁止 root 远程登录(选择 Y)。

删除测试数据库(选择 Y)。

重新加载权限表(选择 Y)。

步骤 4:验证 MySQL 服务状态

bash 复制代码
sudo systemctl status mysql

正常输出应显示 active (running)。

步骤 5:登录 MySQL

使用 root 用户登录:

bash 复制代码
sudo mysql -u root -p

输入步骤 3 中设置的密码。

步骤 6:基本配置(可选)

1. 创建新用户和数据库

sql 复制代码
-- 创建数据库
CREATE DATABASE mydb;

-- 创建用户并设置密码
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'password';

-- 授予权限
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';

-- 刷新权限
FLUSH PRIVILEGES;

2. 允许远程访问

修改配置文件:

bash 复制代码
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

找到 bind-address 并改为:

bash 复制代码
bind-address = 0.0.0.0

重启 MySQL:

bash 复制代码
sudo systemctl restart mysql

为用户授权远程访问:

sql 复制代码
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

步骤 7:防火墙配置(可选)

如果启用了 ufw 防火墙,开放 MySQL 默认端口(3306):

bash 复制代码
sudo ufw allow 3306/tcp
sudo ufw reload

常见问题解决

1. 忘记 root 密码

停止 MySQL 服务:

bash 复制代码
sudo systemctl stop mysql

启动 MySQL 无密码模式:

bash 复制代码
sudo mysqld_safe --skip-grant-tables &

登录并重置密码:

sql 复制代码
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
EXIT;

重启 MySQL 服务。

2. 服务启动失败

检查错误日志:

bash 复制代码
sudo tail -n 50 /var/log/mysql/error.log

扩展说明

1. 安装特定版本(如 MySQL 5.7)

添加 MySQL 官方仓库:

bash 复制代码
wget https://dev.mysql.com/get/mysql-apt-config_0.8.28-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.28-1_all.deb

(安装过程中选择所需版本)

更新并安装:

bash 复制代码
sudo apt update
sudo apt install mysql-server=5.7.* -y

2. 完全卸载 MySQL

bash 复制代码
sudo apt purge mysql-server mysql-client mysql-common
sudo rm -rf /etc/mysql /var/lib/mysql
sudo apt autoremove

后续操作建议

定期备份:使用 mysqldump 备份数据库:

bash 复制代码
mysqldump -u root -p mydb > mydb_backup.sql

监控工具:安装 mytop 或 phpMyAdmin 管理数据库。

性能优化:调整 my.cnf 配置文件(如缓存大小、连接数)。

通过以上步骤,你可以在 Ubuntu 系统上快速部署并配置 MySQL。

相关推荐
一心0924 小时前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上4 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
tan180°5 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
DuelCode6 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
幽络源小助理6 小时前
SpringBoot基于Mysql的商业辅助决策系统设计与实现
java·vue.js·spring boot·后端·mysql·spring
爬山算法8 小时前
MySQL(116)如何监控负载均衡状态?
数据库·mysql·负载均衡
snoopyfly~8 小时前
Ubuntu 24.04 LTS 服务器配置:安装 JDK、Nginx、Redis。
java·服务器·ubuntu
BD_Marathon9 小时前
Ubuntu下Tomcat的配置
linux·ubuntu·tomcat
BD_Marathon9 小时前
Ubuntu:Tomcat里面的catalina.sh
linux·ubuntu·tomcat
BD_Marathon9 小时前
设置LInux环境变量的方法和区别_Ubuntu/Centos
linux·ubuntu·centos