centos7完全卸载和安装mysql8
问题描述
最近安装了MYSQL8,遇到了各种问题,总体汇总一下,凡是无法启动就是my.cnf和初始化的参数不匹配。
第一种
启动前设置了mysqld --initialize --user=mysql --lower-case-table-names=1,my.cnf文件却没有修改就去启动。
第二种
启动没有设置mysqld --initialize,可以启动成功,但是又停止了服务,然后修改了my.cnf文件,在文件中增加了lower-case-table-names=1。
第三种
安装了不匹配的版本,导致yum install mysql-server安装失败。
错误日志1
[root@iZuf6it0abhodk626wob0vZ ~]# sudo service mysqld start
Redirecting to /bin/systemctl start mysqld.service
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
[root@iZuf6it0abhodk626wob0vZ ~]# journalctl -xe
10月 31 08:34:02 iZuf6it0abhodk626wob0vZ systemd[1]: Starting MySQL Server...
-- Subject: Unit mysqld.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit mysqld.service has begun starting up.
10月 31 08:34:03 iZuf6it0abhodk626wob0vZ systemd[1]: mysqld.service: main process exited, code=exited, status=1/FAILURE
10月 31 08:34:03 iZuf6it0abhodk626wob0vZ systemd[1]: Failed to start MySQL Server.
-- Subject: Unit mysqld.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit mysqld.service has failed.
--
-- The result is failed.
10月 31 08:34:03 iZuf6it0abhodk626wob0vZ systemd[1]: Unit mysqld.service entered failed state.
10月 31 08:34:03 iZuf6it0abhodk626wob0vZ systemd[1]: mysqld.service failed.
10月 31 08:34:03 iZuf6it0abhodk626wob0vZ polkitd[567]: Unregistered Authentication Agent for unix-process:23264:394775943 (system bus name :1.15617, objec
错误日志2
[root@iZuf6it0abhodk626wob0vZ ~]# sudo service mysqld start
Redirecting to /bin/systemctl start mysqld.service
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
[root@iZuf6it0abhodk626wob0vZ ~]# journalctl -xe
-- Unit mysqld.service has begun starting up.
10月 31 08:32:20 iZuf6it0abhodk626wob0vZ systemd[1]: mysqld.service: main process exited, code=exited, status=1/FAILURE
10月 31 08:32:20 iZuf6it0abhodk626wob0vZ systemd[1]: Failed to start MySQL Server.
-- Subject: Unit mysqld.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit mysqld.service has failed.
--
-- The result is failed.
10月 31 08:32:20 iZuf6it0abhodk626wob0vZ systemd[1]: Unit mysqld.service entered failed state.
10月 31 08:32:20 iZuf6it0abhodk626wob0vZ systemd[1]: mysqld.service failed.
10月 31 08:32:20 iZuf6it0abhodk626wob0vZ polkitd[567]: Unregistered Authentication Agent for unix-process:21164:394765598 (system bus name :1.15615, objec
10月 31 08:32:20 iZuf6it0abhodk626wob0vZ sshd[21248]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=120.55.40.20
10月 31 08:32:20 iZuf6it0abhodk626wob0vZ sshd[21248]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"
10月 31 08:32:22 iZuf6it0abhodk626wob0vZ sshd[21248]: Failed password for root from 120.55.40.20 port 50908 ssh2
10月 31 08:32:22 iZuf6it0abhodk626wob0vZ sshd[21248]: Received disconnect from 120.55.40.20 port 50908:11: Bye Bye [preauth]
10月 31 08:32:22 iZuf6it0abhodk626wob0vZ sshd[21248]: Disconnected from 120.55.40.20 port 50908 [preauth]
卸载教程
# ------ 卸载mysql
rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs
mysqladmin -V
# 查看已安装的mysql安装包,参照下面的截图
rpm -qa|grep mysql# 使用如下指令将搜索到的mysql安装包全部卸载
rpm -e --nodeps mysql-community-client-plugins-8.0.35-1.el7.x86_64
rpm -e --nodeps mysql-community-client-plugins-8.0.35-1.el7.x86_64
rpm -e --nodeps mysql-community-server-8.0.35-1.el7.x86_64
rpm -e --nodeps mysql-community-common-8.0.35-1.el7.x86_64
rpm -e --nodeps mysql-community-libs-8.0.35-1.el7.x86_64
rpm -e --nodeps mysql-community-icu-data-files-8.0.35-1.el7.x86_64
rpm -e --nodeps mysql80-community-release-el7-1.noarch
rpm -e --nodeps mysql-community-client-8.0.35-1.el7.x86_64# 删除配置文件
rm -vf /etc/my.cnf.rpmsave
# 删除日志文件
rm -vf /var/log/mysqld.log
# 查看并删除其他残留文件
find / -name mysql
# 依次删除
rm -rf 对应路径
# ------ 卸载mysql
安装教程
# ------ 安装mysql#移除yum缓存
yum clean packages# 如果失败不需要关注,继续向下
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022sudo yum install https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm
sudo yum install mysql-server# 查看安装的版本
mysqladmin --version
# 初始化mysql:使用mysql系统用户以安全模式为mysql的root用户生成临时密码,第一次登录后要立马修改。
# 这里一定要注意
# 0 --大小写敏感。(Unix,Linux默认)
# 1 --大小写不敏感。(Windows默认) 创建的库表时
# 2 --大小写不敏感(OS X默认) 创建的库表将原样保存在磁盘上
mysqld --initialize --user=mysql --lower-case-table-names=1
# 然后修改/etc/my.cnf文件中增加lower-case-table-names=1,否则mysql无法启动
# 然后在启动mysql# 查看临时密码
cat /var/log/mysqld.log
# 解锁root账户,避免requirement "uid >= 1000" not met by user "root"
passwd -u rootsudo service mysqld start
service mysqld status# 默认没有密码
mysql -uroot -p
# 直接回车,然后输入刚才查看的密码 +E-nlpd,k7iXALTER USER 'root'@'localhost' IDENTIFIED BY 'Pass@word123';
# 修改Host为通配符%
update mysql.user set host = '%' where user ='root';# 创建用户,可以忽略
create user zhangsan@'%' identified by 'Pass@word123';
# 赋权,可以忽略
GRANT ALL PRIVILEGES ON *.* TO zhangsan;# 刷新权限
flush privileges;
# 退出
exit;
# 停止服务
sudo service mysqld stop
my.cnf
# 在etc下新建或修改my.cnf文件,如果my.cnf已经存在不要删除,也不要修改已经有的配置,添加自己的配置在下面即可。
vim /etc/my.cnf
[client]
port=3308[mysql]
no-beep[mysqld]
port=3308datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.socklog-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
skip_ssl
server-id=1
character-set-server=utf8mb4
lower_case_table_names=1autocommit=1
authentication_policy=mysql_native_password,,
default-storage-engine=INNODB
sql-mode="ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"
long_query_time=10
max_connections=151
table_open_cache=4000
temptable_max_ram=1G
tmp_table_size=95M
internal_tmp_mem_storage_engine=TempTable
myisam_max_sort_file_size=2146435072
myisam_sort_buffer_size=181M
key_buffer_size=8M
read_buffer_size=128K
read_rnd_buffer_size=256K
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=16M
innodb_buffer_pool_size=128M
innodb_redo_log_capacity=100M
innodb_thread_concurrency=17
innodb_autoextend_increment=64
innodb_buffer_pool_instances=8
innodb_concurrency_tickets=5000
innodb_old_blocks_time=1000
innodb_stats_on_metadata=0
innodb_file_per_table=1
innodb_checksum_algorithm=0
flush_time=0
join_buffer_size=256K
max_allowed_packet=64M
max_connect_errors=100
open_files_limit=8161
sort_buffer_size=256K
binlog_row_event_max_size=8K
sync_source_info=10000
sync_relay_log=10000
sync_relay_log_info=10000# 注释掉disable_ssl
# disable_ssl
相关文章:
centos7完全卸载和安装mysql8
问题描述 最近安装了MYSQL8,遇到了各种问题,总体汇总一下,凡是无法启动就是my.cnf和初始化的参数不匹配。 第一种 启动前设置了mysqld --initialize --usermysql --lower-case-table-names1,my.cnf文件却没有修改就去启动。 第…...
常用的解析XML的开源库
以下是一些常用的解析XML的开源库: DOM4J:DOM4J是一个基于Java的XML处理库,提供了DOM、SAX和StAX三种解析方式,可以解析和操作XML文档。它提供了丰富的API,可以用于生成、处理和解析XML文档。JAXB:JAXB是一个基于Java的XML处理库,它可以将Java对象映射到XML文档,也可以将XML文…...

SQLITE3 函数接口
简述 sqlite3 接口的核心元素: 两大对象,八大函数; 其中两个对象指的是: sqlite3 数据库连接对象 数据库的连接句柄(数据库的文件描述符) 代表你打开的那个 sqlite3 的数据库文件,后序对数据库的操作都需要用到这个对象 sqlite3_stmt SQL 语句对象…...

RISC-V IDE MRS无感远程协助模块详解
RISC-V IDE MRS无感远程协助模块详解 一、说明 1.1 概述 针对RISC-V/ARM等内核MCU的嵌入式集成开发环境MRS(MounRiver Studio)从V1.90版本开始内置无感远程协助模块(Sensorless Remote Assistant Module,以下简称SRA模块)。SRA模块是一款支…...
APA技术方案及关键点
APA即我们平时用的最多的基础泊车功能(自动泊车辅助),按照功能来分,有下列子功能: 1.AVM(全景影像),四路环视鱼眼动态拼接,去畸变,提供给用户车身周围360的环境图像信息,有2D(单路鱼眼图)&…...

WordPress外链页面安全跳转插件
老白博客我参照csdn和腾讯云的外链跳转页面,写了一个WordPress外链安全跳转插件:给网站所有第三方链接添加nofollow标签和重定向功能,提高网站安全性。插件包括两个样式,由于涉及到的css不太一样,所以分别写了两个版本…...

【牛客网】安全—加密和安全
每日一练 Day1: 1.信息安全的基本属性是( D ) A.保密性 B.完整性 C.可用性,可靠性,可控性 D.A、B、C都是 信息安全的基本属性通常可以归纳为以下几个方面: 保密性(Confidentiality…...

Mybatis基础操作
基础操作 增删改查 Select 是查询类的注解,所有的查询均使用这个Result 修饰返回的结果集,关联实体类属性和数据库字段一一对应,如果实体类属性和数据库属性名保持一致,就不需要这个属性来修饰。Insert 插入数据库使用ÿ…...

Java实验二类编程实验
1.编写一个代表三角形的类(Triangle.java)。 其中,三条边a,b,c(数据类型为double类型)为三角形的属性,该类封装有求三角形的面积和周长的方法。分别针对三条边为3、4、5和7、8、9的两个三角形进行测试&…...
css文本溢出省略号多行单行例子详细
在 CSS 中,可以使用 text-overflow: ellipsis; 属性来实现文本溢出时自动省略号的效果。但是该属性只能用于单行文本溢出的情况,对于多行文本溢出的情况,需要使用一定的技巧才能实现相应的效果。下面将分别介绍单行和多行文本溢出时的实现方法…...
android auto
测试面向汽车的 Android 应用 | Android 开发者 | Android Developers (google.cn)...

opengl基础笔记1
1、opengl运行模式及opengl规范 运行模式:核心模式与立即渲染模式(弃用) 由于OpenGL的大多数实现都是由显卡厂商编写的,当产生一个bug时通常可以通过升级显卡驱动来解决。这些驱动会包括你的显卡能支持的最新版本的OpenGL…...
Flutter中的各种刷新小部件
1.FutureBuilder 用于处理异步操作和构建界面的非常有用的小部件。它通常与 Future 对象一起使用,用于在异步操作完成后构建界面。 import package:flutter/material.dart;void main() > runApp(MyApp());class MyApp extends StatelessWidget {overrideWidget…...

DataxWeb安装部署及使用--真香警告
DataxWeb安装部署及使用–真香警告 文章目录 1.Datax简介1.1 Datax是什么?1.2 Datax的架构1.3 设计理念1.4 DataX3.0框架设计1.5 DataX3.0插件体系1.6 DataX3.0核心架构1.6.1 核心模块介绍1.6.2 DataX调度流程 2.DataxWeb简介2.1 DataxWeb是什么?2.2 Dat…...

OpenCV 笔记(4):图像的算术运算、逻辑运算
Part11. 图像的算术运算 图像的本质是一个矩阵,所以可以对它进行一些常见的算术运算,例如加、减、乘、除、平方根、对数、绝对值等等。除此之外,还可以对图像进行逻辑运算和几何变换。 我们先从简单的图像加、减、逻辑运算开始介绍。后续会有…...

创建ABAP数据库表和ABAP字典对象-使用已存在的数据元素增加城市字段04
基于内置域增加一个字段 1.在编辑器中,输入字段的名称,后跟冒号:city:。暂时忽略这个错误。2. 输入/MOC/C并使用自动补全(**Ctrl空格**),输入类型。3. 然后添加一个分号:city: /moc/city;4.在SAP GUI中查看,字段已经新增...
Centos7上安装 Node.js
文章目录 一、前言二、步骤三、涉及nodejs,centos还是少用吧 一、前言 centos7安装nodejs如果直接安装较高版本会包错误,无法运行npm node: /lib64/libm.so.6: version GLIBC_2.27‘ not found (required by node)二、步骤 网上说的下载升级编译器的方…...

栈及其栈的模拟实现和使用
1. 栈(Stack) 1.1 概念 栈 :一种特殊的线性表,其 只允许在固定的一端进行插入和删除元素操作 。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO ( Last In First Out )的原则…...

HarmonyOS开发:开源一个刷新加载组件
前言 系统Api中提供了下拉刷新组件Refresh,使用起来也是非常的好用,但是风格和日常的开发,有着巨大的出入,效果如下: 显然上面的效果是很难满足我们实际的需求的,奈何也没有提供的属性可以更改,…...

XSSFWorkbook读取模板,批量填充并导出文件
1、pom文件导入 <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>4.1.0</version> </dependency> <dependency><groupId>org.apache.poi</groupId><artifactId>…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...

【笔记】WSL 中 Rust 安装与测试完整记录
#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统:Ubuntu 24.04 LTS (WSL2)架构:x86_64 (GNU/Linux)Rust 版本:rustc 1.87.0 (2025-05-09)Cargo 版本:cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...

LLMs 系列实操科普(1)
写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...
MinIO Docker 部署:仅开放一个端口
MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...
在 Spring Boot 项目里,MYSQL中json类型字段使用
前言: 因为程序特殊需求导致,需要mysql数据库存储json类型数据,因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...