Centos7 MYSQL 读写分离实验流程分享
发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,本文主要给大家介绍Centos7 MYSQL 读写分离实验流程分享,其所涉及的东西,从理论知识来获悉,有很多书籍、文献可供大家参考,从现实意义角度出发,累计多年的实践经验可分享给大家。mysql介绍M
千家信息网最后更新 2024年11月11日Centos7 MYSQL 读写分离实验流程分享
本文主要给大家介绍Centos7 MYSQL 读写分离实验流程分享,其所涉及的东西,从理论知识来获悉,有很多书籍、文献可供大家参考,从现实意义角度出发,累计多年的实践经验可分享给大家。
mysql介绍
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
安装前准备
3台mysql云服务器 (本次使用的是3台5.7版本的mysql)
一台 centos 服务器 (用作安装 amoeba)
amoeba安装包 java环境包
实验步骤
关闭防火墙自启动,以及相关功能和增强性安全功能
systemctl stop firewalld.service setenforce 0
时间同步
yum install ntp -yvim /etc/ntp.conf在配置文件中添加 server 127.127.100.0 ##本地是时钟源fudge 127.127.100.0 stratum 8 ##设置时间层级为8service ntpd start ##开启服务/usr/sbin/ntpdate 192.168.100.100 ##进行时间同步
mysql主服务器上配置
vim /etc/my.cnf在[mysqld] 下添加server-id=1log-bin=master-bin ##主服务器日志文件log-slave-updates=true ##从服务器更新二进制日志service mysqld restartmysql -u root -p ##进入mysql数据库GRANT REPLICATION SLAVE ON *.* TO 'myslave'@'192.168.100.%' IDENTIFIED BY '123456'; ## 给予回应从服务器的权限FLUSH PRIVILEGES; ##刷新数据show master status;+-------------------+----------+--------------+------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+-------------------+----------+--------------+------------------+| master-bin.000002 | 339 | | |+-------------------+----------+--------------+------------------+1 row in set (0.00 sec)
mysql从服务器配置
vim /etc/my.cnf在 [mysqld]下添加server-id=11relay-log=relay-log-bin ##从主服务器上同步日志文件记录到本地relay-log-index=slave-relay-bin.index ##定义relay-log的位置和名称## 第二台从服务器的 serverid不能相同service mysqld restart ##重启服务mysql -u root -p ##进入mysql数据库change master to master_host='192.168.100.100',master_user='myslave',master_password='123456',master_log_file='master-bin.000002',master_log_pos=339; ##配置主服务器start slave; ##开启同步show slave status \G; ##查看同步状态
验证主从服务器是否开启成功
在主服务器上create database test;在从服务器上show databases;能看到test 则说明成功
安装amoeba服务 并进行配置
推荐使用java 1.6的环境包cp jdk-6u14-linux-x64.bin /usr/local//usr/local/jdk-6u14-linux-x64.bin一直往下 接着输入 yes , 再按 enter稍等一会 配置完成java环境mv jdk1.6.0_14/ /usr/local/jdk1.6vim /etc/profile在最后添加export JAVA_HOME=/usr/local/jdk1.6export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/bin/:$PATH:$HOME/binexport AMOEBA_HOME=/usr/local/amoebaexport PATH=$PATH:$AMOEBA_HOME/binsource /etc/profile ##使配置生效mkdir /usr/local/amoeba ##创建amoeba服务器位置tar zxvf amoeba-mysql-binary-2.2.0.tar.gz -C /usr/local/amoeba/ ##解压amoebachmod -R 755 /usr/local/amoeba ##给予amoeba权限/usr/local/amoeba/bin/amoeba##显示amoeba start|stop说明安装成功在三台mysql上添加权限开放给amoeba访问grant all on *.* to test@'192.168.100.%' identified by '123.com';回到amoeba服务器cd /usr/local/amoebavim conf/amoeba.xml---30行--##用户名 amoeba ----32行---------##密码 123456 ---117-去掉注释- master ##默认池 master ##写入池 slaves ##读取池vi conf/dbServers.xml--23-- mysql服务器的通用数据库名称--mysql --26-29--去掉注释-- test 123.com -----42-主服务器地址--- 192.168.100.100 --52-从服务器主机名---55-从服务器地址- 192.168.100.101 将从服务器的6行复制 并配置 slave2 和其ip地址-----63-从服务器地址池--- slave1,slave2 /usr/local/amoeba/bin/amoeba start& ##开启服务 netstat -anpt | grep java 看到8066 表示服务开启成功 看到主从服务器的地址 表示连接数据库成功
测试
在一台已经安装mysql服务器的电脑上mysql -u amoeba -p123456 -h 192.168.100.100 -P8066## 通过amoeba 登录--在主服务器上--create database zzz;create table test (id int(10),name varchar(10),address varchar(20));--在两台从服务器上--stop slave; ##关闭同步--在主服务器上--use zzz;insert into test values('1','abc','this_is_master');--在从服务器1上--use zzz;insert into test values('2','abc','this_is_slave1');--在从服务器2上--use zzz;insert into test values('3','abc','this_is_slave2');------在客户端上测试----第一次会向从服务器1读数据-第二次会各从2读取select * from test;一次显示id为2的数据 一次显示id为3的数据-------------在通过客户端连接数据库后写入的数据只有主会记录,然后同步给从-从服务器不会记录,从而实现了读写分离。----insert into test values('5','abc','this_is_client');--在主服务器上可以看到写入的数据--select * from test;可以看到id 为 1 和 5的数据--在从服务器上--start slave; 开启同步--在客户端--select * from test;一次会显示 id为 1 2 5 的数据一次会显示 id 为 1 3 5 的数据
至此 mysql的读写分离安装完成
看了以上Centos7 MYSQL 读写分离实验流程分享介绍,希望能给大家在实际运用中带来一定的帮助。本文由于篇幅有限,难免会有不足和需要补充的地方,大家可以继续关注行业资讯板块,会定期给大家更新行业新闻和知识,如有需要更加专业的解答,可在官网联系我们的24小时售前售后,随时帮您解答问题的。
服务
服务器
数据
数据库
同步
配置
成功
地址
管理系统
系统
管理
实验
客户
客户端
文件
日志
权限
环境
流程
主从
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全法与你我有关
常熟市网络安全技术
银行国产数据库替换成本
软件开发绩效方案
成安租房网络安全
xbox游戏服务器分区
切换国际服务器
上海品牌网络技术产品介绍
并发服务器 语言
提升网络安全风险评估
国家计算机网络安全法
黄山哪里学软件开发
投资者适当性评估数据库作用
数据库联合索引优化
非关系型数据库应用与开发的总结
创建数据库连接java
96服务器
天下无双服务器已满
互联网金融科技最好的场所
域服务器硬件配置
数据库域名是什么
物流网络技术员
传奇私服服务器列表
网络安全宣传周电子大屏
数据库表达式怎么输入
网络安全法全文
软件开发毕业设计项目书
互联网科技创新大文章
连云港江苏大容量服务器服务商
水浒游戏服务器爆满怎么进去