在 Linux 系统中安装和配置 MySQL 数据库是许多开发者和系统管理员日常工作中的一部分。MySQL 是一个开源的关系型数据库管理系统,广泛用于 Web 应用开发、数据存储与管理等领域。本文将详细介绍如何在常见的 Linux 发行版(如 Ubuntu 和 CentOS)上安装并配置 MySQL 数据库。
一、安装 MySQL 数据库
1.1 在 Ubuntu 上安装 MySQL
Ubuntu 系统中可以使用 `apt` 包管理器来安装 MySQL。以下是具体步骤:
1. 更新系统包列表:
```bash
sudo apt update
```
2. 安装 MySQL 服务器:
```bash
sudo apt install mysql-server
```
3. 启动 MySQL 服务:
```bash
sudo systemctl start mysql
```
4. 设置开机自启:
```bash
sudo systemctl enable mysql
```
5. 运行安全脚本(可选但推荐):
```bash
sudo mysql_secure_installation
```
这个脚本会引导你设置 root 密码、移除匿名用户、禁止远程 root 登录等,提高数据库安全性。
1.2 在 CentOS 上安装 MySQL
CentOS 系统中通常使用 `yum` 或 `dnf` 包管理器进行安装:
1. 添加 MySQL 官方仓库:
```bash
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm
```
2. 安装 MySQL 服务器:
```bash
sudo yum install mysql-server
```
3. 启动 MySQL 服务:
```bash
sudo systemctl start mysqld
```
4. 设置开机自启:
```bash
sudo systemctl enable mysqld
```
5. 查看初始密码(安装后会生成):
```bash
grep 'temporary password' /var/log/mysqld.log
```
6. 登录并修改密码:
```bash
mysql -u root -p
```
输入初始密码后,执行以下命令修改 root 密码:
```sql
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
```
二、配置 MySQL 数据库
2.1 修改 MySQL 配置文件
MySQL 的主配置文件通常是 `/etc/my.cnf` 或 `/etc/mysql/my.cnf`,根据你的系统可能有所不同。你可以通过编辑该文件来调整数据库的运行参数。
例如,修改默认字符集为 UTF-8:
```ini
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
```
保存后重启 MySQL 服务:
```bash
sudo systemctl restart mysql
```
2.2 创建数据库和用户
1. 登录 MySQL:
```bash
mysql -u root -p
```
2. 创建新数据库:
```sql
CREATE DATABASE mydatabase;
```
3. 创建新用户并授权:
```sql
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON mydatabase. TO 'myuser'@'localhost';
FLUSH PRIVILEGES;
```
4. 退出 MySQL:
```sql
exit;
```
2.3 远程访问配置(可选)
如果你需要从其他机器访问 MySQL 数据库,需进行如下配置:
1. 允许远程连接:
编辑配置文件,找到 `[mysqld]` 段,添加或修改以下
```ini
bind-address = 0.0.0.0
```
2. 开放防火墙端口(如 3306):
- 对于 Ubuntu:
```bash
sudo ufw allow 3306
```
- 对于 CentOS:
```bash
sudo firewall-cmd --permanent --add-port=3306/tcp
sudo firewall-cmd --reload
```
3. 修改用户权限:
```sql
GRANT ALL PRIVILEGES ON . TO 'myuser'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
```
三、验证安装和配置
1. 检查 MySQL 是否正在运行:
```bash
systemctl status mysql
```
2. 尝试连接数据库:
```bash
mysql -u myuser -p
```
3. 查看已有的数据库:
```sql
SHOW DATABASES;
```
四、总结
在 Linux 系统中安装和配置 MySQL 数据库并不复杂,只要按照步骤操作,就可以快速搭建起一个稳定、安全的数据库环境。无论是开发测试还是生产部署,掌握这一技能都非常重要。建议在正式环境中对数据库进行严格的安全配置,避免潜在的风险。
如有更多关于 MySQL 的高级配置、备份恢复、性能优化等内容,欢迎继续关注相关教程。