部署-用Yum安装MySQL 5.7(CentOS 7.7)

本文详细介绍了如何在Linux环境下卸载旧版MariaDB,配置并安装MySQL5.7,包括设置官方yum源,修改配置文件,启动与管理mysqld服务,设置root密码,创建只读用户等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、卸载之前安装的 mariadb (如果有的话)

$ sudo yum remove MariaDB-server galera-4 MariaDB-client MariaDB-shared MariaDB-backup MariaDB-common

2、配置 mysql 5.7 的官方yum源

# 下载 mysql yum 源自动配置软件包 
$ sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

# 配置 mysql yum 源 
$ sudo rpm -ivh mysql80-community-release-el7-3.noarch.rpm

# 禁用 mysql 8 的 yum 源,启用 mysql 5.7 的 yum 源 
$ sudo vim /etc/yum.repos.d/mysql-community.repo 
  # 找到 [mysql57-community] 
  # 将 enabled=0 修改为 enabled=1 
  # 找到 [mysql80-community] 
  # 将 enabled=1 修改为 enabled=0

# 禁用 gpgcheck
$ sudo sed -i 's/gpgcheck=1/gpgcheck=0/g' /etc/yum.repos.d/mysql-community.repo

# 查看可安装的 mysql 社区免费版服务是否为 mysql 5.7
$ sudo yum list | grep mysql-community-server 
  # mysql-community-server.x86_64            5.7.31-1.el7                  mysql57-community

3、安装 mysql 5.7

# 安装 mysql 5.7 服务端
# 会自动安装依赖库:mysql-community-client + mysql-community-common + mysql-community-libs
$ sudo yum install -y mysql-community-server

4、修改 mysql 5.7 配置

创建日志目录

$ sudo mkdir -p /home/logs/mysql \
  && sudo chmod 777 /home/logs \
  && sudo chown mysql:mysql /home/logs/mysql

配置文件(vim /etc/my.cnf)修改内容如下

[mysqld]

# 启动端口
port=3307

# 时区设置
default-time_zone = '+8:00'

# 数据目录(若目录不存在,则mysqld会自动创建)
datadir=/home/mysql_data

# 最大连接数
max_connections=500

# 错误日志(要确保msyql用户对/home/logs/mysql有写权限)
log-error = /home/logs/mysql/error.log

# 通用日志(默认关闭,可通过执行"SET GLOBAL general_log = ON;"动态开启以便调试)
general_log      = OFF
general_log_file = /home/logs/mysql/general.log

# 打开binlog日志
server-id=1
log_bin=mysql-bin
binlog_format=ROW
# binlog日志保存7天,老的会被自动删除
expire_logs_days=7

# 禁用“ONLY_FULL_GROUP_BY”
sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

5、启动 mysqld

$ sudo systemctl start mysqld
$ sudo systemctl status|stop|restart mysqld

6、配置 mysqld 开机自启

$ sudo systemctl enable mysqld

7、设置 mysql root 用户的密码

A superuser account ‘root’@‘localhost’ is created. A password for the superuser is set and stored in the error log file.

# 查看 mysql 生成的临时随机密码
$ sudo grep 'temporary password' /home/logs/mysql/error.log

# 修改 root@localhost 密码
$ sudo mysql -uroot -p"PNWrystgl5?6"
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '<新密码>';

注:mysql5.6需用"mysql_secure_installation"命令完成mysql安装后的安全配置工作,但在mysql5.7以之后版本,不要执行此命令,因为mysql 5.7的安装过程中已经完成了相关的安全配置
参考:Do not run mysql_secure_installation after an installation of MySQL 5.7 or higher, as the function of the program has already been performed by the Yum repository installation.

8、新建 mysql 只读用户

# 新建只读用户
mysql > GRANT SElECT ON *.* TO 'readonly-user'@'localhost' IDENTIFIED BY "<密码>";

# 删除权限
mysql > FLUSH PRIVILEGES;

9、查看 mysql安装的相关文件

$ sudo yum list | grep mysql-community-server
$ sudo rpm -ql mysql-community-server.x86_64
    # 配置文件:/etc/my.cnf | /etc/my.cnf.d
    # systemd服务单元:/usr/lib/systemd/system/mysqld.service

10、参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值