你好,欢迎来到《MySQL 从入门到精通》系列的第一篇。在开始任何数据库操作之前,我们需要先把 MySQL 安装好、跑起来,并用客户端连上去执行第一条命令。这篇博客会带着你完成 Windows 和 Linux 两种操作系统下的安装,还会特别介绍"绿色版"(便携版)的玩法,方便你在没有管理员权限或需要多版本共存的场景下使用。按照"理论+小实验"的传统,我们每一步都有可以动手的命令。
读完本文你将能:
- 在 Windows 上用 MSI 安装包或 zip 绿色包部署 MySQL
- 在 Linux(Ubuntu/Debian 和 CentOS/RHEL)上通过仓库安装 MySQL
- 设置环境变量,方便在终端直接调用
mysql命令 - 初始化数据库并安全设置 root 密码
- 注册系统服务并管理 MySQL 的启停
1. Windows 下安装 MySQL
1.1 使用 MSI 安装包(推荐给初学者)
MySQL 官方提供了图形化的安装向导,适合第一次接触的同学。
步骤:
- 访问 MySQL Community Downloads ,选择
mysql-installer-community-x.x.x.msi下载。 - 运行安装程序,选择 Developer Default 或 Server only,按需勾选组件。
- 在 Accounts and Roles 步骤设置 root 密码,建议使用强密码(字母、数字、特殊字符组合)。
- 配置 Windows 服务,默认服务名
MySQL,勾选"Start the MySQL Server at System Startup"让 MySQL 开机自启。 - 完成安装后,安装程序会自动启动 MySQL 服务。
验证安装:
powershell
mysql -u root -p
输入密码后进入 mysql> 提示符,就说明安装成功了。
1.2 绿色版(zip 包)安装 ------ 更灵活的选择
绿色版不需要安装,解压后手动初始化即可。这在需要多个 MySQL 版本或没有管理员权限时特别有用。
下载 :从 MySQL Community Server 下载 Windows (x86, 64-bit), ZIP Archive。
安装步骤 (假设解压到 D:\mysql-8.0.33-winx64):
-
环境变量配置
将
D:\mysql-8.0.33-winx64\bin添加到系统 PATH 中,这样可以在任意路径下执行mysql、mysqld等命令。
右键"此电脑" → 属性 → 高级系统设置 → 环境变量 → 系统变量 → Path → 新建,填入 bin 路径。 -
创建配置文件
在 MySQL 根目录(
D:\mysql-8.0.33-winx64)下新建my.ini,内容如下:ini[mysqld] basedir=D:/mysql-8.0.33-winx64 datadir=D:/mysql-8.0.33-winx64/data port=3306 character-set-server=utf8mb4 default-storage-engine=INNODB注意路径使用正斜杠
/,Windows 下也支持。basedir是 MySQL 安装目录,datadir是数据存放目录。 -
初始化数据库
以管理员身份打开命令提示符,执行:
cmdcd D:\mysql-8.0.33-winx64\bin mysqld --initialize --console--initialize会创建 data 目录并生成一个临时 root 密码,控制台会输出类似:[Note] A temporary password is generated for root@localhost: 9j*kSu%rhlgT务必记下这个密码 ,一会儿登陆要用。
如果使用
--initialize-insecure则不生成密码,首次登陆无需密码(不推荐生产环境)。 -
注册并启动服务
cmdmysqld --install MySQL80 net start MySQL80这里
MySQL80是服务名,可以自定义。如果想删除服务,执行mysqld --remove MySQL80。如果不想安装服务,也可以直接前台运行:
mysqld --console,但关闭终端 MySQL 也会停止。 -
首次登录并修改密码
cmdmysql -u root -p粘贴临时密码,进入后马上修改:
sqlALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewStrongPassword'; FLUSH PRIVILEGES;退出
exit,重新用新密码登录验证。
2. Linux 下安装 MySQL
大多数 Linux 发行版都可以通过 MySQL 官方仓库安装,享受自动更新和依赖管理的便利。
2.1 Ubuntu / Debian 系列
-
添加 MySQL APT 仓库
访问 MySQL APT Repository 下载对应版本的 deb 包,例如
mysql-apt-config_0.8.29-1_all.deb。bashwget https://dev.mysql.com/get/mysql-apt-config_0.8.29-1_all.deb sudo dpkg -i mysql-apt-config_0.8.29-1_all.deb在配置界面中选择 MySQL 8.0,确认后退出。
-
更新源并安装 MySQL Server
bashsudo apt update sudo apt install mysql-server -y安装过程中会提示设置 root 密码。
-
服务管理
bashsudo systemctl start mysql # 启动 sudo systemctl enable mysql # 开机自启 sudo systemctl status mysql # 查看状态 -
安全初始化(可选)
bashsudo mysql_secure_installation这个脚本会引导你设置密码强度、移除匿名用户、禁止 root 远程登录等,建议刚安装完执行一次。
2.2 CentOS / RHEL 系列
-
添加 MySQL YUM 仓库
bashsudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm检查当前启用的版本:
bashyum repolist enabled | grep "mysql.*-community.*" -
安装 MySQL Server
bashsudo yum install mysql-server -y -
启动并设置开机自启
bashsudo systemctl start mysqld sudo systemctl enable mysqld -
获取临时密码并登录修改
MySQL 8.0 在 CentOS 上首次启动后会在日志中生成临时密码:
bashsudo grep 'temporary password' /var/log/mysqld.log用这个密码登录:
bashmysql -u root -p然后执行:
sqlALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewStrongPassword';
3. 环境变量与配置路径
-
Windows :将 MySQL 的
bin目录加入 PATH 后,可以在任意终端使用mysql、mysqldump等命令。 -
Linux :通过仓库安装时,可执行文件已经放在
/usr/bin下,一般无需额外配置。如果需要手动指定客户端默认字符集等,可以在/etc/my.cnf或~/.my.cnf中添加[mysql]节的配置,例如:ini[mysql] default-character-set=utf8mb4
常见配置文件查找顺序(MySQL 8.0):
- Linux:
/etc/my.cnf→/etc/mysql/my.cnf→~/.my.cnf - Windows:
my.ini在安装目录或C:\ProgramData\MySQL\MySQL Server 8.0\my.ini等位置。
4. 实战:从零安装并连接
尝试按下面的流程完整走一遍,确保你真正拥有了一个可用的 MySQL 环境:
-
选择你的操作系统,找到对应的安装方式。
-
安装完成后 ,用
mysql -u root -p登录。 -
登录后创建第一个测试库:
sqlCREATE DATABASE test_db; USE test_db; CREATE TABLE hello (id INT PRIMARY KEY, msg VARCHAR(50)); INSERT INTO hello VALUES (1, 'MySQL 安装成功!'); SELECT * FROM hello; -
退出客户端,使用
mysqladmin查看服务状态(可选):bashmysqladmin -u root -p ping如果返回
mysqld is alive,说明服务运行正常。
5. 小结
本文覆盖了 MySQL 在 Windows 和 Linux 下的主流安装方式,特别是绿色版的初始化、服务注册和环境变量设置。现在你的 MySQL 已经就绪,可以开始下一篇文章------数据库与表的创建,以及数据类型的详解。
参考资料
- MySQL 8.0 Reference Manual - Installing MySQL
- MySQL 8.0 Reference Manual - Initializing the Data Directory