访问MySQL官方网站下载页面:https://dev.mysql.com/downloads/mysql/
选择版本:
选择操作系统:
推荐下载:
下载步骤:
双击下载的MSI文件,启动安装向导。
安装类型:
| 类型 | 说明 |
|---|---|
| Developer Default | 开发者默认安装 |
| Server only | 仅安装服务器 |
| Client only | 仅安装客户端 |
| Full | 完整安装 |
| Custom | 自定义安装 |
推荐选择:Developer Default
步骤1:选择安装类型
Choosing a Setup Type
○ Developer Default
○ Server only
○ Client only
○ Full
● Custom
步骤2:选择产品
MySQL Server 8.0
MySQL Workbench
MySQL Shell
MySQL Router
Connector/ODBC
Connector/NET
步骤3:安装 点击Execute开始安装,等待安装完成。
步骤4:配置
添加PATH环境变量:
C:\Program Files\MySQL\MySQL Server 8.0\bin验证安装:
mysql --version
输出示例:
mysql Ver 8.0.33 for Win64 on x86_64 (MySQL Community Server - GPL)
查看服务状态:
net start | findstr MySQL
启动服务:
net start MySQL80
停止服务:
net stop MySQL80
重启服务:
net stop MySQL80
net start MySQL80
services.msc添加MySQL YUM源:
# 下载MySQL YUM源
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
# 安装YUM源
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
# 验证YUM源
yum repolist enabled | grep "mysql.*-community.*"
安装MySQL:
# 安装MySQL服务器
yum install mysql-community-server -y
# 查看安装版本
mysql --version
启动MySQL:
# 启动服务
systemctl start mysqld
# 设置开机自启
systemctl enable mysqld
# 查看服务状态
systemctl status mysqld
查看临时密码:
grep 'temporary password' /var/log/mysqld.log
输出示例:
2024-01-01T00:00:00.000000Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Ab3#xYz9Kp
更新软件源:
apt update
安装MySQL:
# 安装MySQL服务器
apt install mysql-server -y
# 查看安装版本
mysql --version
运行安全脚本:
mysql_secure_installation
配置选项:
Securing the MySQL server deployment.
Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No: y
Please set the password for root here.
New password:
Re-enter new password:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
启动服务:
systemctl start mysql
停止服务:
systemctl stop mysql
重启服务:
systemctl restart mysql
查看状态:
systemctl status mysql
设置开机自启:
systemctl enable mysql
取消开机自启:
systemctl disable mysql
访问MySQL官网下载页面,选择macOS版本:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
安装MySQL:
brew install mysql
启动服务:
brew services start mysql
停止服务:
brew services stop mysql
重启服务:
brew services restart mysql
Windows:
C:\ProgramData\MySQL\MySQL Server 8.0\my.iniC:\Program Files\MySQL\MySQL Server 8.0\my.iniLinux:
/etc/my.cnf/etc/mysql/my.cnf/usr/etc/my.cnfmacOS:
/usr/local/etc/my.cnf/opt/homebrew/etc/my.cnf[mysqld]
# 服务器端口
port = 3306
# 数据目录
datadir = /var/lib/mysql
# 套接字文件
socket = /var/lib/mysql/mysql.sock
# 字符集
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
# 默认存储引擎
default-storage-engine = InnoDB
# 最大连接数
max_connections = 200
# 错误日志
log-error = /var/log/mysql/error.log
[mysqld]
# InnoDB缓冲池大小(建议设为物理内存的70-80%)
innodb_buffer_pool_size = 1G
# 日志文件大小
innodb_log_file_size = 256M
# 日志缓冲区大小
innodb_log_buffer_size = 16M
# 刷新日志策略
innodb_flush_log_at_trx_commit = 1
# 锁等待超时时间
innodb_lock_wait_timeout = 50
[mysqld]
# 查询缓存大小(MySQL 8.0已移除)
query_cache_size = 64M
# 查询缓存类型
query_cache_type = 1
[mysqld]
# 错误日志
log-error = /var/log/mysql/error.log
# 慢查询日志
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 2
# 二进制日志
log_bin = mysql-bin
binlog_format = ROW
expire_logs_days = 7
[client]
# 客户端端口
port = 3306
# 套接字文件
socket = /var/lib/mysql/mysql.sock
# 默认字符集
default-character-set = utf8mb4
[mysql]
# MySQL客户端工具配置
prompt = \\u@\\h [\\d]>
no-auto-rehash
基本连接:
mysql -u root -p
指定密码:
mysql -u root -p'password'
指定主机和端口:
mysql -h localhost -P 3306 -u root -p
指定数据库:
mysql -u root -p school
连接远程服务器:
mysql -h 192.168.1.100 -P 3306 -u root -p
连接参数:
| 参数 | 说明 |
|---|---|
| -h | 主机地址 |
| -P | 端口号 |
| -u | 用户名 |
| -p | 密码 |
| -D | 数据库名 |
| -e | 执行SQL语句 |
MySQL官方提供的图形化管理工具。
主要功能:
商业数据库管理工具,功能强大。
主要功能:
基于Web的MySQL管理工具。
主要功能:
查看版本:
SELECT VERSION();
查看状态:
SHOW STATUS;
查看数据库:
SHOW DATABASES;
查看用户:
SELECT USER();
查看当前数据库:
SELECT DATABASE();
完成本章学习后,请确认您能够: