温馨提示×

linux mysql怎么配置

小樊
32
2026-09-18 21:20:02
栏目: 云计算

下面按**常见 Linux 发行版(CentOS / Ubuntu)**给你一个从安装到基本配置的完整说明。


一、安装 MySQL

1. Ubuntu / Debian

sudo apt update
sudo apt install mysql-server

安装完成后:

sudo systemctl status mysql

2. CentOS / Rocky / Alma

sudo yum install mysql-server
# 或
sudo dnf install mysql-server

启动并设置开机自启:

sudo systemctl start mysqld
sudo systemctl enable mysqld

二、初始化安全配置(强烈建议)

Ubuntu

sudo mysql_secure_installation

CentOS(MySQL 5.7+)

sudo mysql_secure_installation

会提示你设置 root 密码、移除匿名用户、禁止远程 root 登录等。


三、登录 MySQL

本地登录(root)

mysql -u root -p

如果是 Ubuntu 且未设密码:

sudo mysql

四、基本配置(常用)

1. 修改 root 密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;

2. 创建数据库和用户

CREATE DATABASE testdb CHARACTER SET utf8mb4;

CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'localhost';
FLUSH PRIVILEGES;

3. 允许远程访问(可选)

编辑配置文件:

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 或 CentOS
sudo vim /etc/my.cnf

修改:

bind-address = 0.0.0.0

授权远程用户:

CREATE USER 'testuser'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'%';
FLUSH PRIVILEGES;

重启 MySQL:

sudo systemctl restart mysql

⚠️ 生产环境不建议直接开放 root 远程登录。


五、配置文件位置

  • Ubuntu:/etc/mysql/my.cnf/etc/mysql/mysql.conf.d/mysqld.cnf
  • CentOS:/etc/my.cnf

常见参数示例:

[mysqld]
character-set-server=utf8mb4
max_connections=200

修改后重启:

sudo systemctl restart mysql

六、防火墙(远程连接必看)

Ubuntu

sudo ufw allow 3306

CentOS

sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --reload

七、常见问题

1. 忘记 root 密码

sudo systemctl stop mysql
sudo mysqld_safe --skip-grant-tables &

然后无密码登录修改密码。

2. 查看 MySQL 状态

systemctl status mysql

如果你能告诉我:

  • Linux 发行版
  • MySQL 版本
  • 使用场景(本地 / 远程 / 生产)

我可以给你更精准的配置方案

0