centos7.9安装mysql5.7完整版

centos7.9安装mysql5.7完整版

1. 更新yum源

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls -lh
#备份镜像源
[root@localhost yum.repos.d]# mv CentOS-Base.repo  CentOS-Base.repo.backup
#下载阿里云centos7镜像
[root@localhost yum.repos.d]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@jztserver01 yum.repos.d]# yum clean all
[root@jztserver01 yum.repos.d]# yum makecache
[root@jztserver01 yum.repos.d]# yum update

2. 下载软件

#下载软件
[root@localhost software]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.43-1.el7.x86_64.rpm-bundle.tar
#查看文件
[root@localhost software]# ls -lh
-rw-r--r--. 1 root root 545M Nov  8 13:39 mysql-5.7.43-1.el7.x86_64.rpm-bundle.tar
#切换目录, 创建目录
[root@localhost sqyr]# cd local/
[root@localhost local]# mkdir mysql-5.7.43
#复制安装包到指定目录
[root@localhost local]# cp /home/sqyr/software/mysql-5.7.43-1.el7.x86_64.rpm-bundle.tar /home/sqyr/local/mysql-5.7.43/

3. 监测软件

[root@localhost software]# ps -ef | grep mysql
[root@localhost software]# netstat -anp | grep 3306
[root@localhost software]# whereis mysql
#rpm检查是否安装. 若安装执依次执行卸载
[root@localhost software]# rpm -qa |grep -i mysql
[root@localhost software]# rpm -ev mysql-community-server-5.7.43-1.el7.x86_64 --nodeps
[root@localhost software]# rpm -ev mysql-community-client-5.7.43-1.el7.x86_64 --nodeps
[root@localhost software]# rpm -ev mysql-community-common-5.7.43-1.el7.x86_64 --nodeps
[root@localhost software]# rpm -ev mysql-community-libs-5.7.43-1.el7.x86_64 --nodeps
#是否安装mariadb
[root@localhost software]# rpm -qa |grep -i mariadb
#如果存在则先停止和禁用服务, 在卸载
[root@localhost software]# systemctl stop mariadb
[root@localhost software]# systemctl disabled mariadb
[root@localhost software]# yum remove mariadb
[root@localhost software]# 
#是否mysql相关文件,依次执行删除文件
[root@localhost software]# find / -name mysql
[root@localhost software]# rm -rf *目录文件

4. 安装软件

#安装环境
[root@localhost mysql-5.7.43]# yum install gcc net-tools pcre-devel zlib zlib-devel openssl openssl-devel libaio*
[root@localhost mysql-5.7.43]# yum install -y perl-Module-Install.noarch
#解压安装包后,删除安装包
[root@localhost mysql-5.7.43]# tar -xvf mysql-5.7.43-1.el7.x86_64.rpm-bundle.tar
[root@localhost mysql-5.7.43]# rm -rf mysql-5.7.43-1.el7.x86_64.rpm-bundle.tar
#检查是否安装, 若安装则依次卸载
[root@localhost mysql-5.7.43]# rpm -qa |grep -i mysql
[root@localhost mysql-5.7.43]# rpm -ev mysql-community-server-5.7.43-1.el7.x86_64 --nodeps
[root@localhost mysql-5.7.43]# rpm -ev mysql-community-client-5.7.43-1.el7.x86_64 --nodeps
[root@localhost mysql-5.7.43]# rpm -ev mysql-community-common-5.7.43-1.el7.x86_64 --nodeps
[root@localhost mysql-5.7.43]# rpm -ev mysql-community-libs-5.7.43-1.el7.x86_64 –nodeps
#监测是否安装mariadb
[root@localhost mysql-5.7.43]# rpm -qa |grep -i mariadb
[root@localhost mysql-5.7.43]# systemctl disabled mariadb
[root@localhost mysql-5.7.43]# yum remove mariadb*
#检查mysql相关文件 
[root@localhost mysql-5.7.43]# find / -name mysql
[root@localhost mysql-5.7.43]# rm -rf *目录文件
#采用yum安装mysql
[root@localhost mysql-5.7.43]# rpm -ivh mysql-community-common-5.7.43-1.el7.x86_64.rpm
[root@localhost mysql-5.7.43]# rpm -ivh mysql-community-libs-5.7.43-1.el7.x86_64.rpm
[root@localhost mysql-5.7.43]# rpm -ivh mysql-community-client-5.7.43-1.el7.x86_64.rpm
[root@localhost mysql-5.7.43]# rpm -ivh mysql-community-server-5.7.43-1.el7.x86_64.rpm
[root@localhost mysql-5.7.43]# rpm -qa|grep -i mysql
#执行启动mysql
[root@localhost mysql-5.7.43]# systemctl start mysqld
#查看mysql是否启动
[root@localhost mysql-5.7.43]# ss -tnl
[root@localhost mysql-5.7.43]# ps -ef | grep mysql
#查询初始化密码
[root@localhost mysql-5.7.43]# cat /var/log/mysqld.log  | grep password
#mysql初始化登录, 回车输入密码
[root@localhost mysql-5.7.43]# mysql -u root -p
#登录成功后,依次执行以下命令然后eixt; 密码安全等级后面要求更改
mysql> SET GLOBAL validate_password_policy='LOW';
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '填写密码';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '填写密码' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '填写密码' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
mysql> SET GLOBAL validate_password_policy='MEDIUM';
mysql> FLUSH PRIVILEGES;
mysql> exit;
#退出后,停止服务
[root@localhost mysql-5.7.43]# systemctl stop mysqld
#创建安装目录
[root@localhost mysql-5.7.43]# mkdir -p install/data
#拷贝源数据文件到新的数据文件位置
[root@localhost mysql-5.7.43]# cp -fa  /var/lib/mysql/* /home/sqyr/local/mysql-5.7.43/install/data/
#修改数据目录权限
[root@localhost mysql-5.7.43]# chown -R mysql:mysql /home/sqyr/local/mysql-5.7.43/install/
#切换目录, 删除源数据文件
[root@localhost mysql-5.7.43]# cd /var/lib/
[root@localhost lib]# mv mysql mysql_bak
#切换目录, 配置日志文件和目录权限
[root@localhost lib]# cd /home/sqyr/local/mysql-5.7.43/install/data/
[root@localhost data] mkdir logs
[root@localhost data] cd logs
[root@localhost logs]# touch mysql-slow.log
[root@localhost logs]# chmod 775 mysql-slow.log
[root@localhost logs]# touch mysqld.log
[root@localhost logs]# chmod 775 mysqld.log
[root@localhost data]# chown -R mysql:mysql /home/sqyr/local/mysql-5.7.43/install/data/logs/
#切换安装目录, 复制errmsg.sys到该目录
[root@localhost mysql-5.7.43]# cd /home/sqyr/local/mysql-5.7.43/install/
[root@localhost mysql-5.7.43]# mkdir -p share/mysql/ 
[root@localhost mysql-5.7.43]# cp /usr/share/mysql/english/errmsg.sys /home/sqyr/local/mysql-5.7.43/install/share/mysql/
#切换目录配置插件validate_password.so
[root@localhost mysql-5.7.43]# cd install/
[root@localhost install]# mkdir -p lib64/mysql/plugin
[root@localhost install]# cp /lib64/mysql/plugin/validate_password.so /home/sqyr/local/mysql-5.7.43/install/lib64/mysql/plugin/

#配置etc/my.cnf文件内容如下

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M[mysqld]
# 基础目录
basedir=/home/sqyr/local/mysql-5.7.43/install/
# 数据目录
datadir=/home/sqyr/local/mysql-5.7.43/install/data
# 通讯链接文件
socket=/home/sqyr/local/mysql-5.7.43/install/data/mysql.sock
# 端口号
port=3306
# 绑定地址
bind-address=0.0.0.0
# 符号链接
skip-name-resolve
# 符号连接的使用被禁用
symbolic-links=0
# 默认编码
character-set-server=utf8
# 默认时区
default-time_zone='+8:00'
# 默认采用InnoDB存储引擎
default-storage-engine=INNODB
# 时间格式
explicit_defaults_for_timestamp=true
# 默认库名表名保存为小写, 不区分大小写
lower_case_table_names=1
# 每执行一个事务都强制写入磁盘
sync_binlog=1# 使用独立表空间
innodb_file_per_table=1
# 数据缓冲区大小,如果是单实例且绝大多数是InnoDB引擎表的话,可考虑设置为物理内存的50% ~ 70%左右;
innodb_buffer_pool_size=2G
# innodb缓冲池块大小
innodb_buffer_pool_chunk_size=128M
# innodb缓冲池实例数
innodb_buffer_pool_instances=8
# 如果要求数据不能丢失,为了数据安全,那么两个都设为1。
innodb_flush_log_at_trx_commit=1
# 事务日志大小
innodb_log_file_size=256M
# 设置2,基本可满足90%以上的场景;
innodb_log_files_in_group=2
# 日志缓冲区大小
innodb_log_buffer_size=4M
# 如果库里的表特别多的情况,请增加此值
innodb_open_files=2048
# mysql的数据文件,千万不要用默认的10M,否则在有高并发事务时,会受到不小的影响
#innodb_data_file_path=ibdata1:12m;ibdata2:1g:autoextend# 服务器最大连接数
max_connections=1024
# 服务器验证密码超过1000次拒绝连接
max_connect_errors=1000
# 消息缓冲区会用到该列,该值太小则会在处理大包时产生错误。如果使用大的text,BLOB列,必须增加该值
max_allowed_packet=256M
# 排序使用的缓冲大小,高并发的情况下, 需要减小此值到64K-128K
sort_buffer_size=4M
# 若果多表连接需求大,则这个值要设置大一点
join_buffer_size=6M
# 读缓冲区大小
read_buffer_size=3M
# 随机读缓冲区大小设置
read_rnd_buffer_size=6M
# 索引块的缓冲区大默认16M
key_buffer_size=128M# 决定是否缓存查询结果。这个变量有三个取值:0,1,2,分别代表了off、on、demand。
query_cache_type=0
# 在高并发,写入量大的系统,建义把该功能禁掉
query_cache_size=64M
# 指定单个查询能够使用的缓冲区大小,缺省为1M
query_cache_limit=2M
# 表描述符缓存大小,可减少文件打开/关闭次数,一般max_connections*2。
table_open_cache=2048
table_definition_cache=2048
# 设置临时表最大值,不要设置过大,否则容易导致OOM发生
tmp_table_size=128M
max_heap_table_size=32M
# 服务器能够同时打开的文件数量上限
open_files_limit=65535
# 跳过指定error no类型的错误
slave-skip-errors=1114# 数据读取超时时间
net_read_timeout=10800
# 数据写入超时时间
net_write_timeout=10800
# 服务器关闭非交互连接之前等待活动的秒数
wait_timeout=86400
# 服务器关闭交互式连接前等待活动的秒数
interactive_timeout=86400
# 优化mysql的线程缓存,服务器线程缓存这个值表示可以重新利用保存在缓存中线程的数量
thread_cache_size=64# 控制binlog日志文件保留时间,超过时间会删除
expire_logs_days=7
# 开启慢日志查询
slow_query_log=ON
# 慢查询的阈值为3秒
long_query_time=3
# 输出慢日志文件
slow_query_log_file=/home/sqyr/local/mysql-5.7.43/install/data/logs/mysql-slow.log
# 一般有两种形式,FILE和TABLE,默认FILE; TABLE时mysql库的slow_log表中
log_output=FILE,TABLE
# 用来缓存批量插入数据的时候临时缓存写入数据。如果有大量数据插入可提高此参数值,默认是8M
bulk_insert_buffer_size=64M
# MyISAM设置恢复表之时使用的缓冲区的尺寸,默认为8M,最小值4k。当在REPAIR TABLE 或用 CREATE INDEX 创建索引或ALTER TABLE过程中对MyISAM索引排序时分配的缓冲区
myisam_sort_buffer_size=32M
#对应errmsg.sys目录和文件位置
lc-messages-dir=/home/sqyr/local/mysql-5.7.43/install/share/mysql# 设置log-error日志文件
log-error=/home/sqyr/local/mysql-5.7.43/install/data/logs/mysqld.log
# 设置pid-file进程文件
pid-file=/var/run/mysqld/mysqld.pid
# 设置mysql模式
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER[client]
socket=/home/sqyr/local/mysql-5.7.43/install/data/mysql.sock
default-character-set=utf8[mysql]
socket=/home/sqyr/local/mysql-5.7.43/install/data/mysql.sock
default-character-set=utf8
#备份源文配置文件, 并覆盖新文件
[root@localhost data]# cp /etc/my.cnf /etc/my.cnf_bak
[root@localhost data]# cp /home/sqyr/software/my.cnf /etc/
#配置selinux, 要重启才生效
[root@localhost data]# vi /etc/sysconfig/selinux
SELINUX=disabled
#设置临时selinux
[root@localhost data]# setenforce 0
[root@localhost data]# getenforce
#执行mysql启动
[root@localhost data]# systemctl start mysqld
#防火墙端口配置
[root@localhost mysql-5.7.43]# firewall-cmd --permanent --add-port=3306/tcp
[root@localhost mysql-5.7.43]# firewall-cmd --reload 
[root@localhost mysql-5.7.43]# firewall-cmd --zone=public --list-ports
[root@localhost mysql-5.7.43]# systemctl restart firewall
[root@localhost mysql-5.7.43]# systemctl status firewall
#设置mysql自启动
[root@localhost mysql-5.7.43]# systemctl enable mysqld.service
[root@localhost mysql-5.7.43]# systemctl list-unit-files | grep mysqld.service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/59245.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年AI办公工具API:高效办公的智能选择

在2024年,AI技术已经深入到我们工作生活的方方面面,极大地提高了办公效率和质量。这些工具通过集成先进的算法和模型,使得日常任务自动化、数据分析智能化、内容创作高效化。以下是2024年最受欢迎的AI办公工具API,它们正在重新定义…

力扣 LeetCode 142. 环形链表II(Day2:链表)

解题思路&#xff1a; 使用set判断是否重复添加&#xff0c;如果set加入不进去证明之前到达过该节点&#xff0c;有环 public class Solution {public ListNode detectCycle(ListNode head) {Set<ListNode> set new HashSet<>();ListNode cur head;while (cur …

基于Spring Boot的电子商务系统设计

5 系统实现 系统实现部分就是将系统分析&#xff0c;系统设计部分的内容通过编码进行功能实现&#xff0c;以一个实际应用系统的形式展示系统分析与系统设计的结果。前面提到的系统分析&#xff0c;系统设计最主要还是进行功能&#xff0c;系统操作逻辑的设计&#xff0c;也包括…

使用 Vue 配合豆包MarsCode 实现“小恐龙酷跑“小游戏

作者&#xff1a;BLACK595 “小恐龙酷跑”&#xff0c;它是一款有趣的离线游戏&#xff0c;是Google给Chrome浏览器加的一个有趣的彩蛋。当我们浏览器断网时一只像素小恐龙便会出来提示断网。许多人认为这只是一个可爱的小图标&#xff0c; 但当我们按下空格后&#xff0c;小恐…

Attention is all you need详细解读

transformer目的是解决NLP中使用RNN不能并行计算问题。 Encoder-Decoder, Attention, Transformer 三者关系 1.基础储备 &#xff08;1&#xff09;CV基础知识 1.首先拿CV中的分类任务来说&#xff0c;训练前我们会有以下几个常见步骤&#xff1a; 2.获取图片 3.定义待分类的类…

面向对象的需求分析和设计(一)

[toc] 1. 引言 前一篇文章《我对需求分析的理解》提到了面向对象分析和设计&#xff0c;正好最近又重新有重点的读了谭云杰著的《Think in UML》&#xff0c;感觉有必要写把书中一些核心内容观点以及自己的想法整理出来&#xff0c;一是方便自己日后的复习&#xff0c;另外也…

Window下PHP安装最新sg11(php5.3-php8.3)

链接: https://pan.baidu.com/s/10yyqTJdwH_oQJnQtWcwIeA 提取码: qz8y 复制这段内容后打开百度网盘手机App&#xff0c;操作更方便哦 (链接失效联系L88467872) 1.下载后解压文件&#xff0c;将对应版本的ixed.xx.win文件放进php对应的ext目录下&#xff0c;如图所示 2.修改ph…

基于Spring Boot与Redis的令牌主动失效机制实现

目录 前言1. 项目结构和依赖配置1.1 项目依赖配置1.2 Redis连接配置 2. 令牌主动失效机制的实现流程2.1 登录成功后将令牌存储到Redis中2.2 使用拦截器验证令牌2.3 用户修改密码后删除旧令牌 3. Redis的配置与测试4. 可能的扩展与优化结语 前言 在现代Web系统中&#xff0c;用…

Linux学习笔记之组管理和权限管理

组管理 文件/目录 所有者 一般文件所有者是文件的创建者&#xff0c;谁创建了该文件&#xff0c;就自然成为该文件的所有者 ls -ahl &#xff08;查看文件的所有者&#xff09; chown 用户名 文件名 &#xff08;修改文件所有者&#xff09; 文件/目录 所在组 当某个用户…

『黄河遗韵』数字非遗馆的守护之旅

创意定位 腾讯云推出的以“守护黄河文明&#xff0c;探索数字非遗馆”为主题的创意H5作品&#xff0c;通过长卷寻宝VR展馆形式&#xff0c;描绘了黄河文明中的非物质文化遗产&#xff0c;旨在唤起公众对黄河文明的保护意识&#xff0c;并邀请大家参与互动&#xff0c;深入了解…

前端监控与埋点 全总结

一、概念 前端埋点是指在网页或者应用程序中插入特定的代码&#xff0c;用于收集用户的行为数据并发送给服务器进行分析。这些数据可以包括用户的点击、浏览、输入等操作&#xff0c;帮助开发者了解用户的在其网站中的行为&#xff0c;从而进行针对性的优化和改进。 前端埋点…

全面介绍软件安全测试分类,安全测试方法、安全防护技术、安全测试流程

一、软件系统设计开发运行安全 1、注重OpenSource组件安全检查和版本更新&#xff08;black duck&#xff09; 现在很多云、云服务器都是由开源的组件去搭成的&#xff0c;对于OpenSource组件应该去做一些安全检查和版本更新&#xff0c;尤其是版本管理&#xff0c;定期对在运…

十、文件上传和下载

文章目录 1. 文件下载2. 文件上传 1. 文件下载 使用ResponseEntity实现下载文件的功能 2. 文件上传

Springboot整合Prometheus+grafana实现系统监控

前言 Prometheus是一个开源的服务监控系统和时序数据库&#xff0c;它提供了强大的功能和灵活的架构&#xff0c;是目前主流的监控和管理应用系统的工具。 而Grafana是一个开源的数据可视化工具&#xff0c;与Prometheus集成&#xff0c;就可以可视化地监控系统的各个指标。 …

新增支持Elasticsearch数据源,支持自定义在线地图风格,DataEase开源BI工具v2.10.2 LTS发布

2024年11月11日&#xff0c;人人可用的开源BI工具DataEase正式发布v2.10.2 LTS版本。 这一版本的功能变动包括&#xff1a;数据源方面&#xff0c;新增了对Elasticsearch数据源的支持&#xff1b;图表方面&#xff0c;对地图类和表格类图表进行了功能增强和优化&#xff0c;增…

常用数字器件的描述-时序逻辑器件的描述

目录 锁存器与触发器 寄存器与移位寄存器 分频器及其应用 偶分频器 奇分频器 半整数分频器 分频器的应用 锁存器与触发器 锁存器与触发器是两种最基本的存储电路。 锁存器是电平敏感器件&#xff0c;而触发器是边沿触发器件。 为了使用灵活方便&#xff0c;商品化的锁…

今天出了10个4声母 .com

价格蛮低的 &#xff0c;VJ.VT.Q.Q 十个 遥想当年6.5万收的5个四声母.com&#xff0c;上面有2个就在下图中呀&#xff0c;赔大发了

【JAVA】使用IDEA创建maven聚合项目

【JAVA】使用IDEA创建maven聚合项目 1.效果图 2.创建父模块项目 2.1删除父模块下面的src目录以及不需要的maven依赖 3创建子模块项目 3.1右击父模块项目选择Module… 3.2创建子模块 3.3删除子模块下不需要的maven依赖 4.子模块创建完成后引入SpringBoot依赖启动项目

OKG Research:用户意图驱动的Web3应用变革

出品&#xff5c; OKG Research 作者&#xff5c;Samuel QIN 当前加密市场的快速演变中&#xff0c;用户增长成为行业可持续发展的基石。目前主流观点在推动行业前进的路上&#xff0c;从单纯的技术探索在向更注重应用价值的方向转变。尽管近年来Web3生态系统发展迅速&#xf…

云渲染与云电脑,应用场景与技术特点全对比

很多朋友问&#xff0c;你们家一会宣传云渲染&#xff0c;一会宣传云电脑的&#xff0c;我到底用哪个&#xff1f;今天&#xff0c;渲染101云渲染和川翔云电脑就来对比下两者的区别&#xff01; 渲染101&川翔云电脑&#xff0c;都是我们的产品&#xff0c;邀请码6666 一、…