MySQL安装
MySQL 全平台安装指南(Mac/Linux/Windows)
MySQL 是目前最流行的关系型数据库之一,其安装过程因操作系统而异。本文详细介绍 Mac、Linux、Windows 三大平台的安装步骤、配置方法及常用命令,帮助你快速搭建 MySQL 环境。
Mac 平台安装(Homebrew 方式)
Mac 推荐使用 Homebrew 安装,步骤简单且便于管理。
安装 MySQL
安装最新版本
brew install mysql
如需指定版本(如 8.0)
brew install mysql@8.0
启动 MySQL 服务
启动服务(后台运行)
mysql.server start
停止服务
mysql.server stop
重启服务
mysql.server restart
安全配置(首次安装必做)
执行安全脚本,设置密码、删除匿名用户等
mysql_secure_installation
- 按提示设置 root 密码(推荐使用强密码)。
- 选择是否禁止 root 远程登录(开发环境可允许,生产环境建议禁止)。
- 删除匿名用户、测试数据库,最后选择
Y重载权限表。
登录 MySQL
本地登录(默认端口 3306)
mysql -u root -p
输入步骤 3 中设置的密码,成功进入 MySQL 命令行
Linux 平台安装(源码包方式)
以 CentOS 为例,通过源码包安装(适合需要自定义配置的场景)。
下载并解压源码包
下载 MySQL 8.0 源码包(可从官网获取最新链接)
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.36-linux-glibc2.12-x86_64.tar.xz
解压到 /usr/local
tar -xvf mysql-8.0.36-linux-glibc2.12-x86_64.tar.xz -C /usr/local
重命名为 mysql
cd /usr/local
mv mysql-8.0.36-linux-glibc2.12-x86_64 mysql
配置用户与目录权限
创建 mysql 用户组和用户
groupadd mysql
useradd -r -g mysql mysql
创建数据目录
mkdir /usr/local/mysql/data
授权目录权限
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
初始化数据库
进入 bin 目录
cd /usr/local/mysql/bin
初始化(生成临时 root 密码,注意记录控制台输出的密码)
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
配置服务与软链接
创建服务软链接
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
创建命令软链接(方便全局使用 mysql 命令)
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
启动服务并修改密码
启动服务
service mysql start
登录(使用初始化时生成的临时密码)
mysql -u root -p
修改密码(进入 MySQL 命令行后执行)
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
FLUSH PRIVILEGES;
开启远程连接(可选)
-- 允许 root 用户远程登录(生产环境谨慎使用)
USE mysql;
UPDATE user SET Host = '%' WHERE User = 'root';
FLUSH PRIVILEGES;
Windows 平台安装(压缩包方式)
Windows 推荐使用压缩包安装(免安装版),步骤如下:
下载并解压
- 从 MySQL 官网 下载 Windows 压缩包(如
mysql-8.0.36-winx64.zip)。 - 解压到自定义目录(如
D:\mysql-8.0.36-winx64)。
配置环境变量
- 新增系统变量
MYSQL_HOME,值为解压目录(如D:\mysql-8.0.36-winx64)。 - 在
Path变量中添加%MYSQL_HOME%\bin(确保命令行可直接调用mysql)。
创建配置文件
在解压目录根目录创建 my.ini 文件,内容如下:
[mysqld]
# 安装目录
basedir = D:\mysql-8.0.36-winx64
# 数据目录(需手动创建 data 文件夹)
datadir = D:\mysql-8.0.36-winx64\data
# 端口号
port = 3306
# 字符集
character-set-server = utf8mb4
# 跳过密码登录(首次初始化用,后续需删除)
# skip-grant-tables
初始化与安装服务
以管理员身份打开命令提示符(CMD):
# 进入 bin 目录 cd D:\mysql-8.0.36-winx64\bin # 初始化数据库(生成临时密码,记录在 data 目录下的 .err 文件中) mysqld --initialize --console # 安装 MySQL 服务 mysqld --install
启动服务并登录
# 启动服务
net start mysql
# 登录(使用初始化时的临时密码)
mysql -u root -p
# 修改密码(进入 MySQL 命令行后)
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
FLUSH PRIVILEGES;
常见问题解决
- 缺失 DLL 文件:下载 DirectX 修复工具 修复系统 DLL。
- 服务安装失败:确保以管理员身份运行 CMD,且端口 3306 未被占用(可通过
netstat -ano | findstr 3306检查)。
MySQL 核心配置文件(my.cnf/my.ini)
配置文件用于自定义 MySQL 服务的参数(如端口、字符集、连接数等),以下是常用配置:
[mysqld]
# 数据目录
datadir = /usr/local/mysql/data # Linux/Mac
# datadir = D:\mysql-8.0.36-winx64\data # Windows
# 端口号
port = 3306
# 字符集(支持表情符号)
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
# 最大连接数(默认 151,根据内存调整)
max_connections = 500
# 表名是否区分大小写(0 区分,1 不区分,Linux 默认为 0,Windows 默认为 1)
lower_case_table_names = 0
# 慢查询日志(超过 2 秒的查询记录)
slow_query_log = 1
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 2
[mysql]
# 客户端默认字符集
default-character-set = utf8mb4
MySQL 常用命令
登录与退出
本地登录
mysql -u root -p
远程登录(指定主机和端口)
mysql -h 192.168.1.100 -P 3306 -u root -p
退出
exit 或 \q
数据库操作
-- 查看所有数据库
SHOW DATABASES;
-- 创建数据库
CREATE DATABASE mydb CHARACTER SET utf8mb4;
-- 使用数据库
USE mydb;
-- 删除数据库(谨慎操作)
DROP DATABASE mydb;
表操作
-- 查看当前库所有表
SHOW TABLES;
-- 查看表结构
DESCRIBE 表名;
-- 创建表(示例)
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
create_time DATETIME DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
服务管理命令
查看服务状态(Linux/Mac)
service mysql status # Linux
mysqladmin -u root -p status # 通用
重启服务(Windows)
net stop mysql && net start mysql