yum安装mysql8

记录一下安装过程用于后面项目参考

目录

  • 说明
  • 安装步骤
  • yum安装默认目录
  • 修改默认的数据目录
  • 必要的my.cnf属性修改
  • 卸载Mysql

说明

一般情况下都是docker安装,部分特殊情况下,例如老外的项目部分禁用docker,那一般二进制安装或者yum直接安装。

  1. 安装操作系统 redhat 7.x
  2. mysql版本 8.0.22
  3. 安装方式为yum安装

安装步骤

确保您具有管理员权限或以root用户身份登录到系统
1.运行以下命令以安装MySQL服务器:

sudo yum install mysql-server

2.安装完成后,启动MySQL服务:

sudo systemctl start mysqld

3.运行以下命令以保护MySQL安装并设置root密码:

sudo mysql_secure_installation

4.完成安全设置后,可以通过以下命令检查MySQL服务的状态:

sudo systemctl status mysqld

yum安装默认目录

针对mysql8 redhat 默认安装目录总结如下:

目录 用途 说明
/usr/bin MySQL二进制文件目录 这个目录包含了MySQL服务器和客户端程序的可执行文件,例如mysql、mysqld等
/etc/my.cnf MySQL配置文件目录 这个目录包含了MySQL服务器的配置文件my.cnf,您可以在此文件中进行MySQL的配置
/var/lib/mysql 数据目录 这个目录是MySQL服务器存储数据文件的位置。其中包含了数据库文件、日志文件和其他数据文件
/var/log/mysqld.log 错误日志目录 这个目录包含了MySQL服务器的错误日志文件,您可以在此文件中查看MySQL的错误和警告信息
/tmp 临时文件目录 MySQL服务器使用此目录存储临时文件,例如排序和临时表等
/var/run/mysqld Socket文件目录 MySQL服务器使用此目录存储UNIX域套接字文件,用于与其他进程进行通信

修改默认的数据目录

假设 我们希望将数据目录调整为 /home/guzt/data/

  1. 关闭mysql服务
sudo systemctl stop mysqld
  1. 创建自定义目录
sudo mkdir /home/guzt/data/mysql
  1. 拷贝数据文件
cp -R /var/lib/mysql /home/guzt/data/
  1. 修改自定义目录归属
sudo chown -R mysql:mysql /home/guzt/data/
  1. 修改配置文件
vim /etc/my.cnf.d/mysql-server.cnf
# ##################修改这一行########################
datadir=/home/guzt/data/mysql
# ####################################################
  1. 重启mysql服务
sudo systemctl start mysqld
sudo systemctl status mysqld

必要的my.cnf属性修改

vim /etc/my.cnf.d/mysql-server.cnf
# #####################################################
#若你的MySQL数据库主要运行在境外,请务必根据实际情况调整本参数
default_time_zone = "+8:00"

#设置client连接mysql时的字符集,防止乱码
init_connect ='SET NAMES utf8mb4'

#是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1

#事务隔离级别,默认为可重复读,mysql默认可重复读级别(此级别下可能参数很多间隙锁,影响性能)
transaction_isolation = READ-COMMITTED

#TIMESTAMP如果没有显示声明NOT NULL,允许NULL值
explicit_defaults_for_timestamp = true

#SQL数据包发送的大小,如果有BLOB对象建议修改成1G
max_allowed_packet = 128M

server-id = 110
#开启bin log 功能

log-bin=mysql-bin
#binlog 记录内容的方式,记录被操作的每一行
binlog_format = ROW

#对于binlog_format = ROW模式时,FULL模式可以用于误操作后的flashBack。
#如果设置为MINIMAL,则会减少记录日志的内容,只记录受影响的列,但对于部分update无法flashBack
binlog_row_image = FULL

#bin log日志保存的天数
#如果 binlog_expire_logs_seconds 选项也存在则 expire_logs_days 选项无效
#expire_logs_days 已经被标注为过期参数
#expire_logs_days = 7
binlog_expire_logs_seconds = 1209600

log_replica_updates
relay_log_recovery = 1
replica_skip_errors = ddl_exist_errors

#控制 redolog 写磁盘频率 默认为1
innodb_flush_log_at_trx_commit = 1
#控制 binlog 写磁盘频率
sync_binlog = 1

[mysqldump]
quick
max_allowed_packet = 128M
# #####################################################

卸载Mysql

如果要协助请执行如下步骤:

sudo systemctl stop mysqld
sudo yum remove mysql-server
sudo yum remove mysql mysql-server mysql-libs
sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/my.cnf
sudo userdel mysql
sudo groupdel mysql

运行以下命令以清理任何残留的MySQL文件和目录

sudo find / -name mysql
sudo find / -name my.cnf

你可能感兴趣的:(mysql,mysql,yum)