Skip to content

安装部署

RHEL

在线安装

下载地址

bash
# EL9
wget https://repo.mysql.com//mysql80-community-release-el9-3.noarch.rpm
yum install -y mysql80-community-release-el9-3.noarch.rpm
# EL8
wget https://repo.mysql.com//mysql80-community-release-el8-7.noarch.rpm
yum install -y mysql80-community-release-el8-7.noarch.rpm
# EL7
wget https://repo.mysql.com//mysql80-community-release-el7-9.noarch.rpm
yum install -y mysql80-community-release-el7-9.noarch.rpm
# EL9
wget https://repo.mysql.com//mysql80-community-release-el9-3.noarch.rpm
yum install -y mysql80-community-release-el9-3.noarch.rpm
# EL8
wget https://repo.mysql.com//mysql80-community-release-el8-7.noarch.rpm
yum install -y mysql80-community-release-el8-7.noarch.rpm
# EL7
wget https://repo.mysql.com//mysql80-community-release-el7-9.noarch.rpm
yum install -y mysql80-community-release-el7-9.noarch.rpm

禁用模块

bash
sudo yum module disable mysql
sudo yum module disable mysql

安装

如果要安装创新版,需要做下面配置,稳定版则无需执行

bash
sudo yum-config-manager --disable mysql80-community
sudo yum-config-manager --disable mysql-tools-community
sudo yum-config-manager --enable mysql-innovation-community
sudo yum-config-manager --enable mysql-tools-innovation-community
sudo yum-config-manager --disable mysql80-community
sudo yum-config-manager --disable mysql-tools-community
sudo yum-config-manager --enable mysql-innovation-community
sudo yum-config-manager --enable mysql-tools-innovation-community

安装

bash
sudo yum install mysql-community-server
sudo yum install mysql-community-server

手工安装

把下载回来的压缩包上传到服务器临时目录下,解压缩后逐一安装。

bash
# 解压缩
tar xvf mysql-8.1.0-1.el8.x86_64.rpm-bundle.tar
# 安装
yum install -y mysql-community-common-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-client-plugins-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-libs-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-client-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-icu-data-files-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-server-8.1.0-1.el8.x86_64.rpm
# 解压缩
tar xvf mysql-8.1.0-1.el8.x86_64.rpm-bundle.tar
# 安装
yum install -y mysql-community-common-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-client-plugins-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-libs-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-client-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-icu-data-files-8.1.0-1.el8.x86_64.rpm
yum install -y mysql-community-server-8.1.0-1.el8.x86_64.rpm

安装目录

|---data                    --      
|---|---app                 -- 应用目录    
|---|---|---data            -- 数据目录    
|---|---|---|---mysql       -- MySQL
|---|---|---|---|---data    -- MySQL数据目录
|---|---|---|---|---logs    -- MySQL日志目录
|---|---|---temp            -- 临时目录
|---data                    --      
|---|---app                 -- 应用目录    
|---|---|---data            -- 数据目录    
|---|---|---|---mysql       -- MySQL
|---|---|---|---|---data    -- MySQL数据目录
|---|---|---|---|---logs    -- MySQL日志目录
|---|---|---temp            -- 临时目录

初始化

初始化数据目录并授权。

bash
# 新建数据目录和日志目录 
mkdir -p /data/app/data/mysql/data
mkdir -p /data/app/data/mysql/logs
# 创建日志文件,这一步非必须
touch /data/app/data/mysql/logs/mysql.log
touch /data/app/data/mysql/logs/mysql-slow.log
# 赋予目录权限
chown -R mysql.mysql /data/app/data/mysql/
# 新建数据目录和日志目录 
mkdir -p /data/app/data/mysql/data
mkdir -p /data/app/data/mysql/logs
# 创建日志文件,这一步非必须
touch /data/app/data/mysql/logs/mysql.log
touch /data/app/data/mysql/logs/mysql-slow.log
# 赋予目录权限
chown -R mysql.mysql /data/app/data/mysql/

打开配置文件。

bash
vi /etc/my.cnf
vi /etc/my.cnf

编辑内容如下

bash
[mysqld]
# 端口
port=3306
# 安装目录和数据目录
# basedir=/data/app/tools/mysql/server
datadir=/data/app/data/mysql/data
# 表名不区分大小写
lower_case_table_names=1
# 编码
character-set-server=utf8mb4
# 字符集
collation-server=utf8mb4_0900_ai_ci
# 指定时区
default-time-zone='+8:00'
# 最大连接数
max_connections=128
# 错误日志
log-error=/data/app/data/mysql/logs/mysql.log
# 慢查询
# 开启慢查询日志
slow-query-log=on
# 慢查询日志路径
slow_query_log_file=/data/app/data/mysql/logs/mysql-slow.log
# 修改为记录5秒内的查询,默认为记录10秒内的查询
long_query_time=5
# 记录未使用索引的查询
log-queries-not-using-indexes=on
[mysqldump]
max_allowed_packet=8M
[mysqld]
# 端口
port=3306
# 安装目录和数据目录
# basedir=/data/app/tools/mysql/server
datadir=/data/app/data/mysql/data
# 表名不区分大小写
lower_case_table_names=1
# 编码
character-set-server=utf8mb4
# 字符集
collation-server=utf8mb4_0900_ai_ci
# 指定时区
default-time-zone='+8:00'
# 最大连接数
max_connections=128
# 错误日志
log-error=/data/app/data/mysql/logs/mysql.log
# 慢查询
# 开启慢查询日志
slow-query-log=on
# 慢查询日志路径
slow_query_log_file=/data/app/data/mysql/logs/mysql-slow.log
# 修改为记录5秒内的查询,默认为记录10秒内的查询
long_query_time=5
# 记录未使用索引的查询
log-queries-not-using-indexes=on
[mysqldump]
max_allowed_packet=8M

启动服务

bash
# 随系统启动
sudo systemctl enable mysqld.service
# 启动服务
sudo systemctl start mysqld.service
# 随系统启动
sudo systemctl enable mysqld.service
# 启动服务
sudo systemctl start mysqld.service

修改默认密码

数据库启动初始化完成后,会生成一个临时的密码保存在/var/log/mysqld.log的日志文件里面。 所以第一次登录时需要查到这个临时密码,并使用临时密码登录后修改初始密码。

bash
# 自定义目录,按上面配置文件,需要从这里查找初始密码
grep 'temporary password' /data/app/data/mysql/logs/mysql.log
# 默认目录
grep 'temporary password' /var/log/mysqld.log
# 自定义目录,按上面配置文件,需要从这里查找初始密码
grep 'temporary password' /data/app/data/mysql/logs/mysql.log
# 默认目录
grep 'temporary password' /var/log/mysqld.log

Windows

安装目录

bash
|---D                       --    
|---|---Tools               --  
|---|---|---MySQL           -- MySQL目录
|---|---|---|---Server      -- MySQL安装目录
|---|---|---|---Data        -- MySQL数据目录
|---|---|---|---Logs        -- MySQL日志目录
|---|---|---|---my.ini      -- 配置文件
|---|---|---temp            -- 临时目录
|---D                       --    
|---|---Tools               --  
|---|---|---MySQL           -- MySQL目录
|---|---|---|---Server      -- MySQL安装目录
|---|---|---|---Data        -- MySQL数据目录
|---|---|---|---Logs        -- MySQL日志目录
|---|---|---|---my.ini      -- 配置文件
|---|---|---temp            -- 临时目录

把绿色安装包解压缩到安装目录下,新建配置文件,内容参考如下

bash
[mysqld]
# 端口
port=3306
# 安装目录和数据目录
basedir=D:\Tools\MySQL\Server
datadir=D:\Tools\MySQL\Data
# 表名不区分大小写
lower_case_table_names=1
# 编码
character-set-server=utf8mb4
# 字符集
collation-server=utf8mb4_0900_ai_ci
# 指定时区
default-time-zone='+8:00'
# 启用传统密码策略认证
default_authentication_plugin=mysql_native_password
# 错误日志
log-error=D:\Tools\MySQL\Logs\mysql.log
# 慢查询
# 开启慢查询日志
slow-query-log=on
# 慢查询日志路径
slow_query_log_file=D:\Tools\MySQL\Logs\mysql-slow.log
# 修改为记录5秒内的查询,默认为记录10秒内的查询
long_query_time=5
# 记录未使用索引的查询
log-queries-not-using-indexes=on
[mysqldump]
max_allowed_packet=8M
[mysqld]
# 端口
port=3306
# 安装目录和数据目录
basedir=D:\Tools\MySQL\Server
datadir=D:\Tools\MySQL\Data
# 表名不区分大小写
lower_case_table_names=1
# 编码
character-set-server=utf8mb4
# 字符集
collation-server=utf8mb4_0900_ai_ci
# 指定时区
default-time-zone='+8:00'
# 启用传统密码策略认证
default_authentication_plugin=mysql_native_password
# 错误日志
log-error=D:\Tools\MySQL\Logs\mysql.log
# 慢查询
# 开启慢查询日志
slow-query-log=on
# 慢查询日志路径
slow_query_log_file=D:\Tools\MySQL\Logs\mysql-slow.log
# 修改为记录5秒内的查询,默认为记录10秒内的查询
long_query_time=5
# 记录未使用索引的查询
log-queries-not-using-indexes=on
[mysqldump]
max_allowed_packet=8M

执行下面命令完成安装和系统服务配置

bash
# 初始化数据库
mysqld --initialize-insecure --datadir=D:\Tools\MySQL\Data
# 安装系统服务
mysqld --install MySQL --defaults-file=D:\Tools\MySQL\my.ini
# 手工启动服务
mysqld --defaults-file=D:\Tools\MySQL\my.ini
# 移除系统服务
mysqld –remove MySQL
# 启动
net start MySQL
# 停止
net stop MySQL
# 初始化数据库
mysqld --initialize-insecure --datadir=D:\Tools\MySQL\Data
# 安装系统服务
mysqld --install MySQL --defaults-file=D:\Tools\MySQL\my.ini
# 手工启动服务
mysqld --defaults-file=D:\Tools\MySQL\my.ini
# 移除系统服务
mysqld –remove MySQL
# 启动
net start MySQL
# 停止
net stop MySQL

服务启动后,可以直接连,默认账号密码为空,这点跟RHEL有区别。

MacOS