全球实时:Mysql高可用高性能存储应用系列3 - mysqld_multi配置主从集群
主从复制要解决的问题,1)写操作锁表,影响读操作,影响业务。2)数据库备份。3)随着数据增加,I O操作增多,单机出现瓶颈。
主从复制要解决的问题,1)写操作锁表,影响读操作,影响业务。2)数据库备份。3)随着数据增加,I/O操作增多,单机出现瓶颈。
(资料图片)
主从复制就是从服务器的主节点,复制到多个从节点,默认采用异步的方式。
从库服务器会开启两个一部的独立线程,I/O线程和Sql进程。
I/O线程 : 负责连接master连接成功后,睡眠并等待master产生新的事件,有新的就保存到自己的中继日志中,中继日志通常位于操作系统的缓存中,所以开销很小。Sql进程:负责执行中继日志中的sql操作。使用cmake安装mysql-5.7.37,Linux系统是centos7,话不多说,我们开始吧,安装之前的准备工作特别重要。
1.卸载系统自带mysql
# rpm -qa | grep mysql# rpm -qa | grep mariadbmariadb-libs-5.5.60-1.el7_5.x86_64# rpm -e --nodeps mariadb*# yum remove mariadb-libs-5.5.60-1.el7_5.x86_64
2.添加mysql禁止登录的用户及目录规划
useradd -M -s /sbin/nologin mysql
# 软件目录(为mysql安装目录创建软链接或改目录名)# ln -s /usr/local/mysql-5.7.37 /usr/local/mysql# 数据目录# mkdir /usr/local/mysql-5.7.37/data# 日志目录# mkdir /var/log/mysql# touch /var/log/mysql/mysqld.log# chown -R mysql.mysql /var/log/mysql/mysqld.log# 其他目录()# mkdir /usr/local/mysql-5.7.37/tmp# chown -R mysql.mysql /usr/local/mysql-5.7.37
3.下载、解压源码包,下载boost软件
boots 一组C++ 库的集合,提供了线性代数、伪随机数生成、多线程、图像处理、正则表达式、单元测试等功能。
# wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz# tar xf boost_1_59_0.tar.gz -C /usr/local
4.安装编译前的依赖包
# yum install -y ncurses-devel libaio-devel gcc gcc-c++ glibc cmake autoconf openssl openssl-devel libstdc++* libtool lrzsz psmisc
5.进行cmake编译mysql源文件
make后的安装时间比较长,我的电脑执行了将近一个半小时,下面是安装时参数说明:
DCMAKE_INSTALL_PREFIX:指定MySQL程序的安装目录,默认/usr/local/mysqlDEFAULT_CHARSET:指定服务器默认字符集,默认latin1DWITH_EXTRA_CHARSET=all:支持扩展字符集DEFAULT_COLLATION:指定服务器默认的校对规则,默认latin1_general_ciDENABLED_LOCAL_INFILE:可以使用load data infile命令从本地导入文件DWITH_READLINE=1 使用readline功能,即方便在命令行复制、粘贴命令。DWITH_xxx_STORAGE_ENGINE:指定静态编译到mysql的存储引擎,MyISAM, MERGE,MEMBER以及CSV四种引擎默认即被编译至服务器,不需要特别指定。DWITH_MYISAM_STORAGE_ENGINE=1 :添加MYISAM存储引擎支持DWITH_INNOBASE_STORAGE_ENGINE=1 :添加INNOBASE存储引擎支持DWITH_MEMORY_STORAGE_ENGINE=1 : 添加MEMORY存储引擎支持DSYSCONFDIR:初始化参数文件目录DMYSQL_DATADIR:数据文件目录DMYSQL_TCP_PORT:服务端口号,默认3306DMYSQL_UNIX_ADDR:socket文件路径,默认/tmp/mysql.sock
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.7.37 \-DMYSQL_DATADIR=/usr/local/mysql-5.7.37/data \-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.7.37/tmp/mysql.sock \-DDOWNLOAD_BOOST=1 \-DWITH_BOOST=/usr/local/boost_1_59_0 \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_EXTRA_CHARSETS=all \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_FEDERATED_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \-DWITH_ZLIB=bundled \-DWITH_SSL=system \-DENABLED_LOCAL_INFILE=1 \-DWITH_EMBEDDED_SERVER=1 \-DENABLE_DOWNLOADS=1 \-DWITH_DEBUG=0
make && make install
1.初始化mysql
/usr/local/mysql/bin/mysqld --initialize --user=mysql--basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
初始密码 A temporary password is generated for root@localhost: T>qxtIjrX8ap
2.初始化3307、3308
/usr/local/mysql/bin/mysqld --no-defaults --initialize-insecure --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data3307 --user=mysql --explicit_defaults_for_timestamp
/usr/local/mysql/bin/mysqld --no-defaults --initialize-insecure --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data3308 --user=mysql --explicit_defaults_for_timestamp
3.将mysql命令加入环境变量
在/etc/profile最后加入环境变量命令,最后执行source /etc/profile,使得配置生效
export PATH=$PATH:/usr/local/mysql/bin
4.my.cnf 配置文件
[mysqld_multi]mysqld=/usr/local/mysql/bin/mysqld_safemysqladmin = /usr/local/mysql/bin/mysqladminuser=rootlog=/usr/local/mysql/mysql_multi.log[mysqld3307]basedir=/usr/local/mysqldatadir=/usr/local/mysql/data3307port=3307user=mysqlsocket=/tmp/mysql.sock3307server_id=3307log_bin=mysql-bin[mysqld3308]basedir=/usr/local/mysqldatadir=/usr/local/mysql/data3308port=3308user=mysqlsocket=/tmp/mysql.sock3308server_id=3308
执行和查看
killall mysqld [root@ff355ce173e3 mysql]# mysqld_multi start[root@ff355ce173e3 mysql]# mysqld_multi reportReporting MySQL serversMySQL server from group: mysqld3307 is runningMySQL server from group: mysqld3308 is running
没有密码,直接回车就可以。
mysql -uroot -p -P3307 -h127.0.0.1
//查看端口mysql> show variables like "port";+---------------+-------+| Variable_name | Value |+---------------+-------+| port | 3307 |+---------------+-------+1 row in set (0.01 sec)//查看binlog日志功能是否开启mysql> show variables like "log_bin";+---------------+-------+| Variable_name | Value |+---------------+-------+| log_bin | ON |+---------------+-------+1 row in set (0.00 sec)//查看server_idmysql> show variables like "server_id";+---------------+-------+| Variable_name | Value |+---------------+-------+| server_id | 3307 |+---------------+-------+1 row in set (0.00 sec)
2.创建一个复制的用户,并赋予权限,首先要执行flush privileges,不然会报错。
flush privileges;create user "copy"@"%" identified by "copy";//配置权限grant replication slave on *.* to "copy"@"%";
3.查看主库的binlog位置
mysql> show master status;+------------------+----------+--------------+------------------+-------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |+------------------+----------+--------------+------------------+-------------------+| mysql-bin.000001 | 747 | | | |+------------------+----------+--------------+------------------+-------------------+1 row in set (0.00 sec)
CHANGE MASTER TOMASTER_HOST="127.0.0.1",MASTER_USER="copy",MASTER_PORT=3307,MASTER_PASSWORD="copy",MASTER_LOG_FILE="mysql-bin.000001",MASTER_LOG_POS=747;
//查看从数据库信息show slave status\G;//start slave;
关键词:
[ 相关文章 ]
主从复制要解决的问题,1)写操作锁表,影响读操作,影响业务。2)数据库备份。3)随着数据增加,I O操作增多,单机出现瓶颈。
港澳青年看祖国(湖北站)活动举办
京粮控股2022年净利1 41亿同比下滑30 84%董事长王春立薪酬210 71万2023 3 311:08:57挖贝网白莹挖贝网3月31日,京粮
1、西北农林14个院中,排名倒数第4(从师资和各方面),属人文学院。2、在职教师87人2010全国法学专业大学排名,陕西的大学,陕西师范开始是全
今天来聊聊关于美国国旗上有几个星星,美国国旗上有几颗星星的文章,现在就为大家来简单介绍下美国国旗上有几个星星,美国国旗上
3月30日,摩根大通首席亚洲及中国股票策略师刘鸣镝发表最新观点,认为中国股票或在4月至5月出现反弹。进入4月,宏观数据和业绩期公司发布的指
中国经济网北京3月30日讯深科技(000021 SZ)股价今日涨停,截至收盘报15 64元,涨幅9 99%。龙虎榜数据显示,买入深科技金额最大的前五名中,有
1、所列数据的样本是有局限性的,并不能详细的刻画全国高校热门程度的变化,但是我最后还想表达几点: 考生们会把自己大学四
“恒大欠钱,关我许家印什么事?”据恒大公告,截至2022年底,恒大境内负债6130亿,加上境外合计约7537亿。在外界看来,恒大早已无力回天,但
8大综合优势!台铃全球首发长续航钠离子电池、极地强磁电机-驱动号_媒体平台
3月30日,碧桂园公布了2022年业绩,报告显示碧桂园全年共实现权益合同销售额3574 7亿元,权益合同销售面积约4450万平方米,权益销售回款率为93
1、踝关节扭伤多是在运动或劳动时,超出踝关节的活动范围而引起的关节和韧带的扭伤。2、病人的主要症状是疼痛、肿胀和害怕移动
3月30日讯:曹操出行生而共享优行未来主题发布会召开,会上曹操汽车及品牌旗下曹操60首度亮相,曹操出行官方表示,该车具有远控空调
2022年对新城控股而言,商业地产则交出了一份不错的成绩。疫情影响下,新城商业运营收入仍录得增长,期内实现商业运营总收入为100 06亿元(即含
3月29日,云南昆明。网传一导游带游客购物耽误吃饭时间,与游客产生言语冲突,并讲故事“冷嘲热讽”游客,引发关注。一游客表
3月29日,“TVB艺人为直播卖货集体苦练普通话”登上热搜的第二天,在香港广播电视城,TVB与淘宝共同举行了一场媒体见面会。见面会的时间选在了
受需求减弱影响,秦港存煤再次突破600万吨。除了秦港外,其余曹妃甸四港、京唐三港存煤全部处于中高位水平。回顾节后,煤炭需求短暂趋好,经过
渤海银行(09668)绩后走弱,早盘放量跌约5%。22年,公司实现营收同比下降9 35%,归母净利同比下降29 23%;停止派息。
信用卡逾期后卡片异常怎么恢复?信用卡出逾期之后现异常情况,可以先把欠款还清,在拨打相关发卡行的服务热线,咨询客服是否可以将卡片恢复
新华社北京3月29日电(记者姚均芳)记者从上海证券交易所获悉,3月29日上午,首批两只新能源基础设施公募REITs(不动产投资信托基金)在上交所
[ 相关新闻 ]
Copyright 2015-2022 南极医院网 版权所有 备案号:粤ICP备2022077823号-13 联系邮箱: 317 493 128@qq.com