10分钟掌握MySQL安装:从零到运行的完整指南

一、安装前准备:环境与工具确认(2分钟)

1.1 系统兼容性检查

MySQL 8.0+版本支持Windows 10/11、Linux(Ubuntu 20.04+/CentOS 7+)、macOS 12+等主流系统。通过命令uname -a(Linux/macOS)或systeminfo | find "OS"(Windows)确认系统版本,确保与MySQL版本匹配。例如,CentOS 7需使用MySQL 5.7或8.0的EL7版本安装包。

1.2 依赖项安装

  • Linux系统:执行sudo apt update && sudo apt install libaio1(Ubuntu)或sudo yum install libaio(CentOS)安装基础依赖库。
  • Windows系统:无需额外依赖,但需关闭防火墙或开放3306端口(netsh advfirewall firewall add rule name="MySQL" dir=in action=allow protocol=TCP localport=3306)。

1.3 下载安装包

访问MySQL官方下载页面(https://dev.mysql.com/downloads/mysql/),选择对应系统的安装包:

  • Windows:下载.msi.zip格式(推荐.msi简化安装流程)。
  • Linux:选择.tar.gz(二进制包)或.rpm/.deb(包管理器安装)。
  • macOS:下载.dmg包或使用Homebrew安装(brew install mysql)。

二、Windows系统安装流程(4分钟)

2.1 使用MSI安装包(推荐)

  1. 双击启动安装程序:选择“Developer Default”配置类型,自动安装服务器和客户端工具。
  2. 配置根密码:在“Auth Method”步骤选择“Use Strong Password Encryption”,设置root@localhost的密码(如MyPass123!)。
  3. 完成安装:勾选“Start MySQL Server after setup”自动启动服务。

2.2 使用ZIP包手动安装

  1. 解压文件:将下载的mysql-8.0.xx-winx64.zip解压至C:\mysql
  2. 创建配置文件:在C:\mysql下新建my.ini,添加以下内容:
    1. [mysqld]
    2. basedir=C:/mysql
    3. datadir=C:/mysql/data
    4. port=3306
  3. 初始化数据目录:以管理员身份运行CMD,执行:
    1. cd C:\mysql\bin
    2. mysqld --initialize --console

    记录生成的临时密码(如A temporary password is generated for root@localhost: abc123XYZ)。

  4. 安装服务并启动
    1. mysqld --install MySQL
    2. net start MySQL

三、Linux系统安装流程(4分钟)

3.1 Ubuntu/Debian系统(APT安装)

  1. 添加MySQL APT仓库
    1. wget https://dev.mysql.com/get/mysql-apt-config_0.8.28-1_all.deb
    2. sudo dpkg -i mysql-apt-config_0.8.28-1_all.deb
    3. sudo apt update
  2. 安装MySQL服务器
    1. sudo apt install mysql-server
  3. 运行安全脚本
    1. sudo mysql_secure_installation

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

3.2 CentOS/RHEL系统(RPM安装)

  1. 下载并安装MySQL YUM仓库
    1. wget https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm
    2. sudo rpm -ivh mysql80-community-release-el7-6.noarch.rpm
    3. sudo yum install mysql-community-server
  2. 启动服务
    1. sudo systemctl start mysqld
    2. sudo systemctl enable mysqld
  3. 获取临时密码
    1. sudo grep 'temporary password' /var/log/mysqld.log

四、安装后验证与基础配置(2分钟)

4.1 登录MySQL

  • Windows/Linux:执行mysql -u root -p,输入安装时设置的密码。
  • 首次登录后修改密码(MySQL 8.0+):
    1. ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPass123!';

4.2 创建测试数据库

  1. CREATE DATABASE test_db;
  2. USE test_db;
  3. CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50));
  4. INSERT INTO users (name) VALUES ('Alice'), ('Bob');
  5. SELECT * FROM users;

4.3 开放远程访问(可选)

  1. 修改绑定地址:在my.cnf(Linux)或my.ini(Windows)中添加:
    1. [mysqld]
    2. bind-address = 0.0.0.0
  2. 创建远程用户
    1. CREATE USER 'remote'@'%' IDENTIFIED BY 'RemotePass123!';
    2. GRANT ALL PRIVILEGES ON *.* TO 'remote'@'%';
    3. FLUSH PRIVILEGES;
  3. 防火墙放行3306端口
    • Linux:sudo ufw allow 3306(Ubuntu)或sudo firewall-cmd --add-port=3306/tcp --permanent(CentOS)。
    • Windows:通过“高级安全Windows Defender防火墙”添加入站规则。

五、常见问题解决

5.1 端口冲突

若3306端口被占用,修改my.cnf中的port参数(如3307),重启服务后使用mysql -u root -p -P 3307登录。

5.2 密码重置

停止MySQL服务后,以安全模式启动:

  1. sudo mysqld_safe --skip-grant-tables &

无密码登录后执行:

  1. FLUSH PRIVILEGES;
  2. ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPass123!';

5.3 服务启动失败

检查错误日志(/var/log/mysqld.logC:\mysql\data\hostname.err),常见原因包括数据目录权限不足(sudo chown -R mysql:mysql /var/lib/mysql)或配置文件错误。

六、总结与扩展建议

通过本文,您已掌握MySQL在主流系统的快速安装方法,包括依赖准备、包管理、服务配置及基础验证。建议进一步学习:

  • 备份与恢复:使用mysqldump定期备份数据库。
  • 性能优化:调整innodb_buffer_pool_size等参数。
  • 高可用方案:部署主从复制或Galera集群。

实际开发中,可根据项目需求选择合适的版本(如5.7兼容性更好,8.0支持JSON字段和窗口函数),并通过容器化(Docker)简化环境管理。