Linux rocky 9.2 安装mysql-8.0.39-linux-glibc2.28-x86_64.tar.xz

news2024/11/30 0:43:06

数据库官方下载:MySQL :: Download MySQL Community Server

本文也绑定该资源包,免费提供下载学习。

1.系统版本

2.新建目录,存放数据库安装包,并且上传

需要用到的工具:yum -y install vim lrzsz tar

上传解压:tar -xvf mysql-8.0.39-linux-glibc2.28-x86_64.tar.xz

3.修改目录名字

mv mysql-8.0.39-linux-glibc2.28-x86_64  /usr/local/mysql

4.新建mysql 用户,用于启动mysql

groupadd mysql
 
useradd -r -g mysql mysql

5.新建mysql所需目录

[root@localhost local]# mkdir -pv /usr/local/mysql/{data,log}
mkdir: created directory '/usr/local/mysql/data'
mkdir: created directory '/usr/local/mysql/log'
[root@localhost local]# touch  /usr/local/mysql/log/error.log

6.授权/usr/local/mysql/所属为mysql ,以便启动服务有权限。

[root@localhost local]# chown -R mysql.mysql /usr/local/mysql/*

7.新建vim /etc/my.cnf

[root@localhost bin]# cat /etc/my.cnf 
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
server_id=1
port=3306
socket=/tmp/mysql.sock
symbolic-links=0
 
lower_case_table_names=1
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
 
[mysql]
socket=/tmp/mysql.sock
 
[mysqld_safe]
log-error=/usr/local/mysql/log/error.log
pid-file=/usr/local/mysql/mysql.pid
 
[client]
port=3306
socket=/tmp/mysql.sock


8.配置systemctl 管理mysql 数据库服务

vim /etc/systemd/system/mysqld.service

[Unit]
Description=Mysql
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
#PIDFile=/usr/local/mysql/mysql8420/data/localhost.localdomain.pid
ExecStart=/usr/local/mysql/support-files/mysql.server start
#ExecReload=/bin/kill -s HUP $MAINPID
ExecReload=/usr/local/mysql/support-files/mysql.server restart
#ExecStop=/bin/kill -s QUIT $MAINPID
ExecStop=/usr/local/mysql/support-files/mysql.server stop
PrivateTmp=false

User=mysql
Group=mysql

[Install]

9.配置环境变量

vim /etc/profile
在最后一行添加,mysql所在的bin 目录

export PATH=/usr/local/mysql/bin:$PATH

刷新环境变量

source /etc/profile

10.初始化数据库

./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

初始化成功,数据库密码默认: root@localhost: IKK,BNIaF6js

11.启动数据库

12.要修改数据库密码,才能使用该数据库,不然报错

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

修改数据库密码

登录数据库,修改数据库密码:ALTER USER ‘username’@‘localhost’ IDENTIFIED BY ‘new_password’;

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '12345@Admin';
Query OK, 0 rows affected (0.01 sec)

配置主从同步

13.按照上一步骤,再新建一台数据库服务器

a.  主机名 master103    ip:192.168.0.103   主数据库

b.  主机名 slave106       ip:192.168.0.106    从数据库

14.修改vim /etc/my.cnf

server_id    取值范围1至2的32次方减一,只要集群唯一值即可

log-bin=master-mysql_bin

修改两台的my.cnf,需要重启数据库服务

systemctl restart mysqld && systemctl status  mysqld

15.在主数据库中新建一个用户,用于从数据库同步主数据库。

-- 创建用户 slave
CREATE USER 'slave'@'%' IDENTIFIED BY '12345678';
-- 授权
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%';
-- 刷新权限
FLUSH PRIVILEGES;

查询主库bin-log日志文件和position端口

mysql> show master status;

从库直接执行(方法一)

CHANGE REPLICATION SOURCE TO
     SOURCE_HOST='192.168.0.103',
     SOURCE_PORT=3306,
     SOURCE_USER='slave',
     SOURCE_PASSWORD='12345678',
     SOURCE_LOG_FILE='master-mysql-bin.000001',
     SOURCE_LOG_POS=1635;

(方法二)

change master to master_host='192.168.0.103',master_user='slave',master_password='12345@Admin',master_log_file='masert-mysql_bin.000006',master_log_pos=157;

停止同步

mysql> stop slave;

开启同步

mysql> start  slave;
查看同步状态

 SHOW REPLICA STATUS\G;

报错内容

 Last_IO_Error: Error connecting to source 'slave@192.168.0.103:3306'. This was attempt 2/86400, with a delay of 60 seconds between attempts. Message: Can't connect to MySQL server on '192.168.0.103:3306' (113)

这边尝试用新建的用户在从库远程登录到主库,看看用户密码权限三个是否正确,在登录过程,提醒新的报错

猜测应该是8版本以上,数据库用户必须用复杂性密码,就不会报这个错

报错内容

[root@slave106 bin]# mysql  -uslave  -p'12345678' -h 192.168.0.103
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.0.103:3306' (113)


解决办法:关闭两台数据库服务器的防火墙和selinux

关闭后,尝试用新用户 slave登录主库,发现能登录

证明账户密码无误后,再切换root 登录mysql,再次查看同步正常,如果不正常,再停止同步和开启同步。

题外:RESET REPLICA;   --  重置同步

测试结果,在主库新建数据库,从库能看到新创建的数据库。

mysql> flush logs;    --刷新日志,

题外:

vim /etc/my.cnf

设置Binlog文件大小和保留时间

max_binlog_size=100M expire_logs_days=7

 查看Binlog状态

SHOW MASTER STATUS; SHOW BINARY LOGS;

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

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

相关文章

SAP EWM 包装

目录 1 简介 2 业务流程 3 主数据 4 后台配置 1 简介 SAP S4 HANA 里 EWM 包装功能使用 PS(packaging specification)代替原有的包装功能 PM(packaging management), PI(packaging instruction)。PS 生…

UNiapp之微信小程序导出Excel

效果如下 参考小程序:日常记一记 ---账单页面 主要功能是根据筛选条件导出账单明细列表,实现该功能主要借助一个工具(excel.js),可在文章顶部下载或者一下网盘下载 https://pan.baidu.com/s/1RLisuG4_7FGD0Cnwewyabg?pwdpd2a 提取码: pd2a…

C# 判断

|判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)| | |-------------------------------------------------------------|–| | | | 下面是…

HormonyOS踩坑JSON.stringfy

前两天发现一个问题 就是一个值 用as string就可以打印出来 用JSON.stringfy()就不行 百思不得其解 想破了脑袋!!!终于被我发现了 原因就在于上边那个包!!!!把那个包删除了就好了&#xff…

勇闯机器学习(第二关-数据集使用)

以下内容,皆为原创,重在无私分享高质量知识,制作实属不易,请点点关注。 好戏开场了~~~(这关涉及到了加载数据集的代码,下一关,教你们安装机器学习库) 一.数据集 这一关的目标 知道数据集被分为训练集和测…

一款搭载远翔FP5207芯片的大功率音箱,蓝牙音箱的组成和拆解展示

一款搭载远翔FP5207芯片的大功率音箱,蓝牙音箱的组成和拆解展示: 它主要以电池、功放、蓝牙、外壳结构组成。音箱放电需内置升压芯片FP5207或5217进行电池升压给功放供电。 为同时满足便携性需求并提供足够的功率,音箱通常配备了12V铅酸电池…

MySQL中的DML操作()

一、添加数据(INSERT) 1.1 选择插入 INSERT INTO 表名(列名 1 ,列名 2 ,列名 3.....) VALUES(值 1 ,值 2 ,值 3......); 1.2 默认值处理(DEFAULT) 在 MySQL 中可以使用 DEFAULT 为列设定一个默认值。如果在插入数据时并未指定该…

【C++】OJ习题(初阶)

🚀个人主页:奋斗的小羊 🚀所属专栏:C 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 💥1、字符串💥1.1 字符串相加💥1.2 验证回文字符串💥1.3 反转…

单例模式 详解

单例模式 简介: 让类只初始化一次, 然后不同的地方都能获取到同一个实例 这是非常常用的一种模式, 系统稍微大一点基本上都会用到. 在系统中, 不同模块的总管理类都已单例模式居多 这里我们不仅使用c实现单例模式, 也会用python2实现一遍 python代码 想要看更详细的python单…

【Python机器学习】NLP——一个简陋的聊天机器人

目录 正则表达式 一个简答的聊天机器人 另一种方法 正则表达式就是一种FSM,同时它也给出了一种可能的NLP方法,即基于模式的方法。 正则表达式 现实生活中,密码锁其实就是一台简单的语言处理机。密码锁不能阅读和理解课本,但是…

高性能web服务器nginx

目录 nginx简介 服务端 I/O 流程 Nginx 进程结构 Nginx启动流程 nginx的源码编译下载 nginx命令常见参数 nginx的配置文件详解 全局配置优化 nginx的平滑升级和回滚 nginx目录匹配优先级测试(因为只支持访问文件,所有不比对匹配目录优先级&…

STM32GPIO引脚八种工作模式

1. GPIO简述 GPIO(General-purpose input/output),通用型输入输出。简单理解就是我们可以控制输入输出的STM32引脚,统称为GPIO。 GPIO存在的意义就是用程序控制或读取它们的输出或输入。 2. 功能描述 每个GPI/O端口有两个32位配…

代码随想录算法训练营day50:图论01:图论理论基础;深度优先搜索理论基础;98. 所有可达路径;广度优先搜索理论基础

图论理论基础 分类:有向图,无向图,有无权重 度:【无向图】:有几条边连接该节点,该节点就有几度。 【有向图】:每个节点有出度和入度。出度:从该节点出发的边的个数。入度&#xf…

.net maui安卓开发中适用明文传输(一)

背景:最近在做一个pad上的项目,目的是执行每日点检功能(就是检查设备的各项保养指标);前期用HBuilder做了一个,但是现场的触摸屏选用的是TouchPie 安卓版本是6.0版本,上次开发的软件可以在安卓7.0上完美兼容,但由于触摸屏安卓版本太低不能兼容;询问厂商才知道这款触摸…

前端性能优化的指标

性能优化指标的出现,谷歌在2020年提出的Core Web Vitals 和 Web Vitals 了解谷歌浏览器自带的性能调试工具DCL、L、FP、FCP、LCP,图层(有layout布局就是回流,painting绘制就是重绘) 回流和重绘的理解 页面第一次打开一定回流和重绘,回流一定重绘,回流出现一般是位置改变…

BEV世界:通过统一的BEV潜在空间实现自动驾驶的多模态世界模型

BEVWorld: A Multimodal World Model for Autonomous Driving via Unified BEV Latent Space BEV世界:通过统一的BEV潜在空间实现自动驾驶的多模态世界模型 Abstract World models are receiving increasing attention in autonomous driving for their ability t…

【数据结构】PTA 求链表的倒数第m个元素 C语言

请设计时间和空间上都尽可能高效的算法,在不改变链表的前提下,求链式存储的线性表的倒数第m(>0)个元素。 函数接口定义: ElementType Find( List L, int m ); 其中List结构定义如下: typedef struct…

什么是机器人快换盘?

机器人快换盘,行业内也称作工具快换盘、换枪盘、快换工具盘、快速更换器、快换器、 快换夹具、治具快换等。是末端执行器快速更换装置(End-Of-Arm Tooling,简称EOAT),是工业自动化领域中用于机器人手臂上的一种重要设备…

短视频矩阵工具种类繁多,一招教你轻松做选择!

在当下竞争日益激烈的市场中,选择一个稳定且高效的矩阵营销系统对于企业和实体店来说至关重要,然而众多的工具往往让人难以抉择,今天笔者给大家四个关键筛选点,帮你快速筛选出最合适自己的矩阵营销工具: 1. 功能全面性…

探索AI工作流工具:提升编程效率的三大利器

问题:面对屎山代码,你是如何处理的? 今天我将为你推荐三个强大的AI工作流工具,它们将彻底改变你的编程体验,让你在工作中如鱼得水,事半功倍! 1. 代码解释器:解读复杂代码的利器 初…