CENTOS 安装MySQL

MySQL断连问题排查日记 最近两日,由于新迁的mysql总是出现问题,导致项目系统无法连接数据库或者总是断连,致使项目无法进行,经过排查多方面原因,最终找到问题所在: 首先是出现的问题: [ERROR] Fatal error: Can’t open and lock privilege tables: Table ‘mysql.user’ doesn’t exist [ERROR] Fatal error: Failed to initialize ACL/grant/time zones structures or failed 阅读详情

CENTOS 安装MySQL

CENTOS 版本 7.3

MYSQL 版本:5.7.29

下载地址:https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

将下载好的安装压缩包解压到/usr/local目录下。PS:初次安装者建议先在/usr/local中操作,熟练以后再自定义到其他目录,因为有很多东西要改的,被目录影响会很不好进行下去

解压 mysql包到/usr/local目录

tar -vzxf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

创建安装包目录的软链

ln -s mysql-5.7.29-linux-glibc2.12-x86_64 mysql

为centos添加mysql用户组和mysql用户(-s /bin/false参数指定mysql用户仅拥有所有权,而没有登录权限)

groupadd mysql
useradd -r -g mysql -s /bin/false mysql

进入mysql目录并为mysql用户赋权

cd /usr/local/mysql
chown -R mysql:mysql ./

安装mysql

 ./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
[root@db-7-51 mysql]# ./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize

……省略……
2022-07-12T03:27:31.727756Z 1 [Note] A temporary password is generated for root@localhost: yZho-p8Zsmuv
# 命令输出中有生成的临时密码: yZho-p8Zsmuv

启动mysql

./support-files/mysql.server start
[root@db-7-51 mysql]# ./support-files/mysql.server start
Starting MySQL.2022-07-12T03:28:10.588141Z mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
 ERROR! The server quit without updating PID file (/var/lib/mysql/db-7-51.pid).

报错没有日志文件,创建目录及文件后再次启动。新报错没有/var/lib/mysql/db-7-51.pid文件

[root@db-7-51 mysql]# mkdir -p /var/log/mariadb/
[root@db-7-51 mysql]# touch /var/log/mariadb/mariadb.log
[root@db-7-51 mysql]# chown mysql:mysql /var/log/mariadb/mariadb.log
[root@db-7-51 mysql]# ./support-files/mysql.server start
Starting MySQL.2022-07-12T03:29:34.161359Z mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists.
 ERROR! The server quit without updating PID file (/var/lib/mysql/db-7-51.pid).

查看/var/log/mariadb/mariadb.log日志文件

2022-07-12T03:30:04.916037Z 0 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
……
2022-07-12T03:30:05.591286Z 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
2022-07-12T03:30:05.591295Z 0 [ERROR] Fatal error: Failed to initialize ACL/grant/time zones structures or failed to remove temporary table files.
2022-07-12T03:30:05.591331Z 0 [ERROR] Aborting

修改mysql 配置文件

vim /etc/my.cnf

# 将以下配置复制到my.cnf

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
socket=/tmp/mysql.sock
 
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/tmp/mysqld/mysqld.pid
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
[client]
default-character-set=utf8
 
[mysql]
default-character-set=utf8
 
[mysqld]
log-bin=mysql-bin 
binlog-format=ROW 
server_id=1 
max_connections=1000
 
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake

[root@db-7-51 mysql]# mkdir -p /tmp/mysqld/
[root@db-7-51 mysql]# touch /tmp/mysqld/mysqld.pid
[root@db-7-51 mysql]# chown -R mysql:mysql /tmp/mysqld/
[root@db-7-51 mysql]# chmod 777 /tmp/mysqld/mysqld.pid
[root@db-7-51 mysql]# chown -R mysql:mysql /var/log
[root@db-7-51 mysql]# chmod 777 /var/log/mysqld.log

然后再次启动mysql,启动成功

[root@db-7-51 mysql]# ./support-files/mysql.server start
Starting MySQL. SUCCESS!

复制启动命令到 /etc/init.d/mysql,以后就可以使用 service mysql start启动mysql。

[root@db-7-51 mysql]cp support-files/mysql.server /etc/init.d/mysql

将mysql的指令映射到 /usr/bin目录下,就可以直接用mysql命令登录了。

[root@db-7-51 mysql] ln -s  /usr/local/mysql/bin/mysql    /usr/bin

使用刚刚安装mysql得到的初始化密码进行登录

[root@db-7-51 mysql]# mysql -uroot -pyZho-p8Zsmuv
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.29-log

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

但执行mysql命令时报如下错误,需要修改密码使用

mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
# 修改密码为 123456
mysql> set password = password('123456');
Query OK, 0 rows affected, 1 warning (0.01 sec)

# 设置密码有效期永不过期
mysql> alter user 'root'@'localhost' password expire never;
Query OK, 0 rows affected (0.00 sec)

# 应用修改
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

# 修改后可以使用新密码重新登录,可以正常执行命令

[root@db-7-51 mysql]# mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.29-log MySQL Community Server (GPL)

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases
    -> ;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+

设置root用户允许远程登录

# 支持root用户允许远程连接mysql数据库
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
flush privileges;

参考文档:
https://blog.youkuaiyun.com/dc282614966/article/details/81098074
https://blog.youkuaiyun.com/Hdu_lc14015312/article/details/104540429
https://www.cnblogs.com/linjiqin/p/5270938.html

在CentOS下安装MySQL 面向oltp(onlinetransactionprocessing)、行锁、支持外键、非锁定读、默认采用repeaable级别(可重复读)通过next-keylocking策略避免幻读、插入缓冲、二次写、自适应哈希索引、预读。 阅读详情

相关推荐

MySQL —— 在CentOS9下安装MySQL

登录后,你需要修改root用户的密码。MySQL 8的密码策略要求新密码必须包含大小写字母、数字和特殊符号。,将bind-address设置为0.0.0.0或你的服务器IP地址。MySQL安装完成后,会在日志文件中生成一个初始临时密码。你可以使用以下命令来查找这个密码。配置远程访问:如果你需要允许远程访问MySQL服务器,可以修改MySQL的配置文件。我们首先来到mysql的官网:mysql.com,找到DOWNLOADS。然后执行这条命令,启用MySQL8仓库。使用初始临时密码登录MySQL。

m0_74824123的博客 1252

【MySQL】MySQL错误分析及解决

1 error: log-error set to '/u01/data/mydb/3306/error/3306.err' 错误描述: [root@strong ~]# service mysqld start Starting MySQL.2019-05-12T09:39:38.619861Z mysqld_safe error: log-error set to '/u01/data/...

个人公众号:Alen的数据库学习笔记 4857

【MySQL 系列】在 CentOS 上安装 MySQL

CentOS 是一个使用非常广泛的 Linux 发行版,CentOS 属于 RedHat 架构。本篇文章中,我们展示了在 CentOS 8/7/6 上安装 MySQL 8 的详细步骤。

栗筝i的博客 3177

Fatal error: Can‘t open and lock privilege tables: Table ‘mysql.user‘ doesn‘t exist问题解决

2022-05-22T08:39:38.628913Z 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist 2022-05-22T08:39:38.628983Z 0 [ERROR] Fatal error: Failed to initialize ACL/grant/time zones structures or failed to remove temporary

mkmlmkmlmkml的博客 8423

生成式深度学习(第二版)-第一章-Conda环境下TensorFlow和Keras的安装和配置

按照书籍中的代码运行提示,需要配置Docker。个人的机器上正好有 conda4.14.0,索性就在本地环境进行配置。

GarryWang1248的博客 398

ANSYS ICEM CFD 2023R2 结构化网格实战:翼型绕流 10 步生成高质量六面体网格

在计算流体力学(CFD)分析中,网格质量直接决定了仿真结果的精度和收敛性。对于翼型绕流这类典型的外部流动问题,结构化网格因其规则的节点排列和优异的边界层捕捉能力,成为高精度模拟的首选方案。通过在后缘处添加局部H型拓扑,并将过渡区增长率降至1.1,最终使网格质量指标提升40%,计算收敛速度提高2倍。这印证了结构化网格在复杂流动模拟中的不可替代性——虽然初期投入时间较多,但能显著提升计算精度和稳定性。在开始网格划分前,合理的几何准备是确保后续流程顺利的关键。对于翼型绕流,O型网格拓扑能提供最佳的边界层适应性。

weixin_30731305的博客 364

centos6.8安装mysql5.7报错

错误信息: 2020-05-16T22:52:44.186526Z 0 [ERROR] Fatal error: mysql.user table is damaged. Please run mysql_upgrade. 2020-05-16T22:52:44.186652Z 0 [ERROR] Fatal error: Failed to initialize ACL/grant/time zones structures or failed to 2020-05-16T22:52:44.186785Z

qq_41627514的博客 555

中移物联ML307C模组OPENCPU开发环境搭建全攻略

本文详细介绍了中移物联ML307C模组OPENCPU开发环境搭建的全过程。从OPENCPU模式的核心优势解析,到SDK获取、Python与scons工具安装,再到解读SDK目录结构与实战编译命令,最后提供常见问题避坑指南,帮助开发者快速构建高效的物联网应用编译环境。

weixin_29168393的博客 745

windows系统统不支持mysql_windows系统下解决mysql无法启动的问题

很久前安装的mysql今天想要用却启动不了,运行进入到mysql安装目录下的bin目录,打开powerShell运行mysql--console看到启动的错误信息:2019-10-29T03:46:08.817662Z0 [ERROR] Fatal error: Can't open and lock privilege tables: Table'mysql.user' doesn't exis...

weixin_39682301的博客 494

探索如何利用CST和ADS进行DDR的SIPI联合仿真

本文系统介绍了CST和ADS两款工具进行DDR信号完整性/电源完整性(SI/PI)联合仿真的方法。CST采用工作室协同方式,通过PCB布局导入、材料设置、模型分配等步骤,重点分析了电源阻抗优化和信号波形质量。ADS则利用SIPro、PIPro等专用工具,突出系统级验证和自动化优化功能。两者各有优势:CST擅长3D结构精确建模,ADS更适于快速系统验证。文章建议可根据项目需求混合使用两种工具,并提供了模型简化、频带选择等实用技巧。通过对比分析,为工程师选择仿真工具提供了决策参考。

一只豌豆象的博客 1150

飞牛fnNAS搭建Web网页版OFFICE(WPS)软件

本文介绍了如何在飞牛NAS上通过Docker容器部署WPS Office办公软件。主要内容包括:启用Docker服务、准备项目文件夹结构、使用Compose方式构建容器、解决端口冲突问题、配置中文输入法和字体库,以及通过ZeroTier实现远程访问。文章详细说明了每个步骤的操作方法,包括容器启动、输入法设置、字体添加和文件存储位置配置。最后还介绍了使用ZeroTier内网穿透技术实现远程访问NAS上WPS服务的方法,让用户可以在不同设备上随时编辑NAS中的文件。整个部署过程完整清晰,为NAS用户提供了便捷的

dgnankai的专栏 1701

【MySQL】在CentOS环境下安装MySQL

本篇文章介绍了如何在CentOS环境下安装MySQL服务

Eristic0618的博客 2265

使用安卓的IMU数据进行 行人航位推算(PDR)推算步长 附python 代码

加速度计数据、陀螺仪数据、重力传感器数据、姿态仰角数据。数据分析与定位轨迹生成主要使用Python离线完成。示意图。

三维点云技术探索 1916

CentOS安装mysql

Centos安装mysql

忘心虚无的博客 1万+

自定义模型训练——打造专属OpenClaw模型(2026AI版)

本文介绍了OpenClaw自定义模型训练的核心流程,包括框架选择(PyTorch、TensorFlow、HuggingFace和原生OpenClaw框架)、训练环境搭建脚本、以及数据收集系统的设计。数据收集器支持从数据库、API、文件和网络等多种来源获取训练数据,并提供灵活的过滤机制确保数据质量。通过这套系统,开发者可以高效准备训练数据,为后续模型训练打下坚实基础。

博客 877

深度学习-161-Dify工具之对比使用工作流和聊天流生成图表可视化的html文件

分别使用聊天流和工作流进行数据分析结果的可视化,生成html文件。聊天流可以配置带记忆,这样就可以多次交互优化结果。

qq_20466211的博客 1709

在Centos上安装MySQL

通过上图可以发现Mysql的版本为8.4的,但我们想安装8.0的,所以可以通过如下链接访问MySQL的历史版本

m0_72532428的博客 1万+

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

CentOS安装MySQL详解

Java架构进阶面试及知识点文档笔记这份文档共498页,其中包括Java集合,并发编程,JVM,Dubbo,Redis,Spring全家桶,MySQL,Kafka等面试解析及知识点整理Java分布式高级面试问题解析文档其中都是包括分布式的面试问题解析,内容有分布式消息队列,Redis缓存,分库分表,微服务架构,分布式高可用,读写分离等等!

2401_85112148的博客 7661

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Centos安装MySQL

环境:centos7.6 另:需要执行的shell语句,一律省略了提示符,方便复制、执行。 一、版本选择 MySQL版本一般有三个数字: 第一个数字:主版本号,目前常用的有5和8; 第二个数字:次要版本号; 第三个数字:发布系列中的系列号,每个新的错误修复版本都会增加此值。 后缀说明:mN表示里程碑编号,rc表示候选版本,没有后缀则为生产版本。系列中的开发从里程碑版本开始,到候选版本,最后到达生产版本。 因此根据需要选定主版本号和次要版本号后,发布系列版本号一般越大越好。 二、安装 1.

qq_36713450的博客 1万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Centos下安装Mysql

数据库安装

Han同学 1983

CentOS7 安装MySQL

1. 创建安装目录1.进入到目录 /usr/ 中:$ cd /usr/2.创建目录 /usr/software,如果有则忽略: $ mkdir -p software3.创建 /usr/software/mysql 目录,如果已存在则忽略:$ mkdir -p mysql4.进入到目录 /usr/software/中:$ cd /usr/software2.查看是否已安装1.查看系统中是否已安装 M

jeikerxiao 3346

centos安装mysql_centos如何安装mysql

centos如何安装mysql?CentOS中安装MySQL步骤详解本文中Linux环境为CentOS 6.4 32位,且安装选择的是Basic Server版。在有些Linux版本中会自带有MySQL数据库,所以在安装之前,需要检查当前Linux环境中是否已有MySQL数据库,若有,则先将其卸载。以下为在CentOS中安装MySQL的基本步骤:1)查看当前系统是否自带MySQL数据库[root@...

weixin_34017901的博客 240

如何查看centos是否安装了mysql_centOS系统安装MySQL教程

如何卸载CentOS系统自带MySQL1.1、查找以前是否装有MySQL命令:rpm-qa|grep-imysql可以看到如下图的所示:(图片来自互联网,仅做参考使用)说明系统自带:MySQL-client-5.5.25a-1.rhel5MySQL-server-5.5.25a-1.rhel51.2、停止MySQL服务、删除之前安装的MySQL1)停止服务命令:(mysql服务命令有二...

weixin_36168780的博客 1万+

【MySQL】CentOS下安装Mysql

查询到我当前的系统有这个文件,那么进行删除。

专注于技术分享的博主 1372
上一篇: Redis6.0新特性-客户端缓存(其三)
下一篇: CENTOS安装配置JDK
不与天斗8866
博客等级 码龄18年 651粉丝 196原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值