mysql完全可以在linux系统中使用,并且linux是mysql官方重点支持的运行环境之一,很多生产环境的服务都会选择将mysql部署在linux系统中,以获得更稳定的运行表现和更高的资源利用率。

mysql在linux中的安装方式
不同的linux发行版安装mysql的方式略有差异,下面分别介绍常见发行版的安装方法。
基于Debian/Ubuntu系统
这类系统可以使用apt包管理器直接安装,步骤如下:
- 更新本地软件包索引
- 安装mysql服务端和客户端
- 执行安全配置脚本初始化设置
对应的执行命令如下:
# 更新软件包索引 sudo apt update # 安装mysql服务 sudo apt install mysql-server mysql-client -y # 执行安全配置,设置root密码、移除匿名用户等 sudo mysql_secure_installation
基于CentOS/RHEL系统
这类系统可以使用yum或者dnf包管理器安装,步骤如下:
- 添加mysql官方yum源
- 安装mysql社区版服务端
- 启动服务并设置开机自启
对应的执行命令如下:
# 下载mysql yum源安装包,这里以mysql8.0为例 sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm # 安装yum源 sudo rpm -ivh mysql80-community-release-el7-5.noarch.rpm # 安装mysql服务 sudo yum install mysql-community-server -y # 启动mysql服务 sudo systemctl start mysqld # 设置开机自启 sudo systemctl enable mysqld # 查看初始root密码 sudo grep 'temporary password' /var/log/mysqld.log
mysql基础配置与登录
安装完成后需要先完成基础配置才能正常使用,首先使用初始密码登录mysql:
# 使用root用户登录mysql mysql -u root -p
登录成功后建议先修改root用户的密码,执行如下sql语句:
-- 修改root用户密码,密码需要包含大小写字母、数字和特殊字符 ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPass@123'; -- 刷新权限使配置生效 FLUSH PRIVILEGES;
如果需要允许远程连接mysql,还需要额外配置用户权限,执行如下操作:
-- 创建允许远程连接的用户,用户名是remote_user,密码是RemotePass@123 CREATE USER 'remote_user'@'%' IDENTIFIED BY 'RemotePass@123'; -- 授予该用户所有数据库的所有权限 GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%'; -- 刷新权限 FLUSH PRIVILEGES;
同时需要开放linux系统的3306端口,允许外部访问:
# 开放3306端口 sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent # 重新加载防火墙规则 sudo firewall-cmd --reload
linux中mysql的常用操作
在linux中使用mysql的常用操作和在其他系统中基本一致,下面是一些高频操作示例:
数据库相关操作
-- 查看所有数据库 SHOW DATABASES; -- 创建新数据库,字符集设置为utf8mb4 CREATE DATABASE test_db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; -- 切换到指定数据库 USE test_db; -- 删除数据库 DROP DATABASE test_db;
数据表相关操作
-- 创建数据表
CREATE TABLE user_info (
id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(50) NOT NULL,
age INT,
create_time DATETIME DEFAULT CURRENT_TIMESTAMP
);
-- 查看当前数据库所有表
SHOW TABLES;
-- 查看表结构
DESC user_info;
-- 删除数据表
DROP TABLE user_info;
服务管理操作
在linux中可以通过systemctl命令管理mysql服务的运行状态:
# 查看mysql服务状态 sudo systemctl status mysqld # 停止mysql服务 sudo systemctl stop mysqld # 重启mysql服务 sudo systemctl restart mysqld
使用注意事项
- linux系统中mysql的配置文件默认路径通常是
/etc/my.cnf或者/etc/mysql/my.cnf,需要修改配置时可以直接编辑该文件,修改后需要重启服务生效 - mysql的数据文件默认存储在
/var/lib/mysql目录下,需要注意该目录的磁盘空间,避免磁盘满导致服务异常 - 生产环境中不要直接使用root用户远程连接数据库,建议创建权限受限的普通用户用于业务连接
- 定期备份数据库数据,避免数据丢失,可以使用
mysqldump命令进行备份
备份数据库的示例命令如下:
# 备份test_db数据库到指定文件 mysqldump -u root -p test_db > /backup/test_db_$(date +%Y%m%d).sql