mysql

MySQL 安装与配置

By AI-Writer 5 min read

MySQL 安装与配置

MySQL 是全球使用最广泛的开源关系型数据库,由瑞典 MySQL AB 公司开发,现属 Oracle 旗下。MySQL 8.x 引入了窗口函数、CTE(公用表表达式)、JSON 增强等现代 SQL 特性,是目前最推荐的稳定版本。本文覆盖 macOS、Linux、Windows 三大平台的安装方式,以及服务启停、连接配置和常用客户端工具。

macOS 安装

使用 Homebrew 安装(推荐)

bash
# 安装 MySQL Server
brew install mysql

# 启动 MySQL 服务(安装后默认不自动启动)
brew services start mysql

# 确认服务状态
brew services list | grep mysql

初始配置与安全设置

bash
# 运行安全配置向导(设置 root 密码、禁止匿名登录等)
mysql_secure_installation

# 输出示例:
# VALIDATE PASSWORD COMPONENT... (建议生产环境开启)
# Set root password? [Y/n] Y
# New password: ********
# Remove anonymous users? [Y/n] Y
# Disallow root login remotely? [Y/n] Y
# Remove test database? [Y/n] Y

本地连接

bash
# 通过 socket 连接(macOS Homebrew 默认方式)
mysql -u root -p

# 输入密码后进入 MySQL CLI:
# mysql>

Linux 安装

Ubuntu / Debian(apt)

bash
# 更新软件源
sudo apt update

# 安装 MySQL Server
sudo apt install mysql-server

# 启动服务并设置开机自启
sudo systemctl start mysql
sudo systemctl enable mysql

# 运行安全配置向导
sudo mysql_secure_installation

CentOS / RHEL / Fedora(yum/dnf)

bash
# 添加 MySQL Yum Repository
sudo dnf install https://dev.mysql.com/get/mysql80-community-release-el9-4.noarch.rpm

# 安装 MySQL Server
sudo dnf install mysql-community-server

# 启动服务
sudo systemctl start mysqld
sudo systemctl enable mysqld

# 查看临时 root 密码(首次安装时自动生成)
sudo grep 'temporary password' /var/log/mysqld.log

提示:首次使用临时密码登录后,必须立即运行 ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; 修改密码。

Windows 安装

使用 MySQL Installer

  1. 下载 MySQL Installer
  2. 运行安装程序,选择 Full 类型(包含 Server、Workbench、Shell 等全部组件)
  3. Configuration 步骤设置:
    • Port:3306(默认)
    • Root 密码:自定义强密码
    • Service Name:MySQL80

安装完成后,MySQL 服务自动注册为 Windows 服务,可在 服务 应用中启动/停止。

使用 Chocolatey

powershell
# 以管理员身份运行 PowerShell
choco install mysql -y

服务管理命令

无论哪个平台,安装完成后都需要掌握以下服务管理命令:

bash
# Linux/macOS
sudo systemctl start mysql    # 启动
sudo systemctl stop mysql     # 停止
sudo systemctl restart mysql  # 重启
sudo systemctl status mysql   # 查看状态

# Homebrew macOS 特有
brew services start mysql
brew services stop mysql
brew services restart mysql

# Windows PowerShell
Start-Service MySQL80
Stop-Service MySQL80
Restart-Service MySQL80

常用客户端工具

MySQL CLI

MySQL 自带的命令行客户端是最基础也最强大的工具:

bash
# 基本连接语法
mysql -h 主机名 -P 端口 -u 用户名 -p 数据库名

# 常用示例
mysql -u root -p                    # 连接本地默认数据库
mysql -h 127.0.0.1 -P 3306 -u root -p   # 远程连接
mysql -u root -p -e "SHOW DATABASES;"   # 非交互式执行(脚本场景)

# 连接后常用命令
SHOW DATABASES;     -- 查看所有数据库
USE mysql;          -- 切换到 mysql 数据库
SHOW TABLES;        -- 查看当前数据库所有表
EXIT;               -- 退出

MySQL Workbench(官方 GUI)

Oracle 官方提供的图形化管理工具,下载地址:https://dev.mysql.com/downloads/workbench/

功能包括:SQL 编辑与执行、ER 图设计、数据迁移、性能报告。

DBeaver(推荐)

免费开源的通用数据库客户端,支持 MySQL 及数十种其他数据库:

bash
# macOS
brew install --cask dbeaver-community

# 下载地址:https://dbeaver.io/download/

DBeaver 支持:

  • SQL 自动补全与格式化
  • ER 图可视化
  • 数据导入/导出(CSV、Excel)
  • 数据库对比与同步

配置文件详解

MySQL 的行为由配置文件 my.cnf(Linux/macOS)或 my.ini(Windows)控制:

ini
# /etc/my.cnf 或 /etc/mysql/my.cnf(Linux)
# macOS Homebrew: /opt/homebrew/etc/my.cnf

[mysqld]
# 字符集(生产环境建议 utf8mb4)
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

# 端口
port = 3306

# 数据目录
datadir = /var/lib/mysql

# 日志文件
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 2

# 最大连接数
max_connections = 200

[client]
default-character-set = utf8mb4

修改配置后需要重启服务:

bash
sudo systemctl restart mysql

总结

本文覆盖了 MySQL 在三大主流平台的安装流程和服务管理:

  • macOS:Homebrew 安装 + brew services 管理
  • Linux:apt/dnf 安装 + systemctl 管理
  • Windows:Installer 或 Chocolatey 安装
  • 客户端:CLI、MySQL Workbench、DBeaver 各有适用场景
  • 配置:通过 my.cnf/my.ini 控制字符集、端口、连接数等行为

MySQL 环境就绪后,下一篇我们将学习 SQL 基础语法,掌握 SELECT、INSERT、UPDATE、DELETE 等核心语句。

#mysql #数据库 #安装 #入门

评论

A

Written by

AI-Writer

Related Articles

mysql
#2

SQL 基础语法

掌握 MySQL 中 SELECT、INSERT、UPDATE、DELETE 四大核心语句,以及别名、注释、DISTINCT、LIMIT 等实用技巧

Read More
mysql
#5

条件过滤与聚合查询

掌握 WHERE、LIKE、IN、BETWEEN、ORDER BY、LIMIT、GROUP BY、HAVING 等子句,实现精确数据筛选、分组统计与结果排序

Read More
mysql
#3

数据类型与表设计

深入理解 MySQL 8.x 的数值、字符、日期类型,以及主键、外键、NOT NULL、UNIQUE、DEFAULT 等约束的含义与实战选择

Read More