来自:mjsws > 馆藏分类
配色: 字号:
MySQL数据库Innobackupex主从同步
2018-11-26 | 阅:  转:  |  分享 
  
MySQL数据库Innobackupex主从同步--提取汉字,去掉非汉子数据--创建函数/使用ASCII码来区分中文和其它字符,中文的AS
CII码值的范围是45217~63486,根据这个来实现,我们就需要使用ORACLE中的函数ASCII,用它来返回ASCII值。
/createorreplacefunctionFUNC_CHINESE(custNamevarchar2)retur
nvarchar2isResultvarchar2(100);tmp_custNamevarchar2(100);coun
t_strnumber;inumber:=1;str_asciinumber;current_charvarchar2(1
0);beginselectlength(custName)intocount_strfromdual;whilei?
current_char:=substr(custName,i,1);selectASCII(current_char)int
ostr_asciifromdual;ifstr_ascii>45216thentmp_custName:=tmp_cu
stName||current_char;endif;i:=i+1;endloop;主服务器必要配置必要运行参数–启用bi
nlog及允许同步master]#vim/etc/my.cnf[mysqld]bind-address=0.0.0.0/
/监听的ip地址log_bin=master-bin//启用binlog日志server_id=10//指定服务器
ID号binlog_format=mixed//指定日志格式–授权备份用户master]#mysql-uroot
-p''密码''mysql>GRANTREPLICATIONSLAVEON.TO''repluser''@''192.168
.1.%''IDENTIFIEDBY''pass'';mysql>SHOWMASTERSTATUS\G;MySQL备份工具
物理备份缺点–跨平台性差–备份时间长、冗余备份、浪费存储空间mysqldump备份缺点–效率较低,备份和还原速度慢–备份
过程中,数据插入和更新操作会被挂起XtraBackup工具一款强大的在线热备份工具–备份过程中不锁库表,适合生产环境–由专业
组织Percona提供(改进MySQL分支)主要含两个组件–xtrabackup:C程序,支持InnoDB/Xt
raDB–innobackupex:以Perl脚本封装xtrabackup,还支持MyISAM安装XtraBack
up主从数据库上都安装xtrabackup下载适配的RPM包并安装638棋牌http://www.dadiqipaigw.c
n–percona-xtrabackup-24-2.4.7-1.el7.x86_64.rpm#yum-yinstallpe
rl-Digest-MD5.x86_64rsyncperl-DBD-MySQL#rpm-ivhlibev-4.15-1.e
l6.rf.x86_64.rpm#rpm-ivhpercona-xtrabackup-24-2.4.7-1.el7.x86_6
4.rpm#rpm-qlpercona-xtrabackup-24......命令innobackupex基本选项常用选项
含义--host主机名--user用户名--port端口号--password密码--databases数据库名-
-no-timestamp不用日期命名备份文件存储的子目录名--databases="库名"//单个库--databas
es="库1库2"//多个库--databases="库.表"//单个表--redo-only//日志合并-
-apply-log//准备还原(回滚日志)--copy-back//恢复数据--incremental目录名//增
量备份--incremental--basedir=目录名//增量备份时,指定上一次备份数据存储的目录名--incrementa
l-dir=目录名//准备恢复数据时,指定增量备份数据存储的目录名--export//导出表信息--import//导入表
空间--slave-info//导出的信息包含master-log、position偏移量配置从服务器调整运行参数–启用bi
nlog及允许同步,启用只读模式slave]#vim/etc/my.cnf[mysqld]server_id=20//
指定服务器ID号log_bin=slave-bin//启用binlog日志sync-binlog=1//允许日志
同步read_only=1//只读模式,同步及SUPER权限用户例外使用innobackupex–将主数据库所有库完全
备份到/backupmaster]#innobackupex--userroot--password123456--
slave-info/backup--no-timestamp//完全备份–将主数据库备份文件夹/backup拷贝到从库/
backupmaster]#scp-r/backup从库ip:/root–通过应用BACKUP-DIR下的事务日志文件x
trabackup_logfile,在BACKUP-DIR目录建立新的事务日志文件ib_logfile。slave]#innob
ackupex--userroot--password123456--apply-log/backupslave]#r
m-rf/var/lib/mysql///恢复时要求空的库目录slave]#innobackupex--userr
oot--password123456--copy-back/backup//复制所有的备份到他们原来的位置slave]
#chown-Rmysql:mysql/var/lib/mysql//更改属组、属主slave]#systemctl
stopmysqldslave]#systemctlstartmysqldslave]#mysql-uroot-p1
23456mysql>showdatabases;从库发起同步操作–指定Master相关参数,日志名、偏移量(查看/bu
ckup/xtrabackup_info)mysql>CHANGEMASTERTOMASTER_HOST=''192.168
.1.10'',->MASTER_USER=''repluser'',->MASTER_PASSWORD=''pass'',->MAS
TER_LOG_FILE=''master-bin.000001'',//日志文件->MASTER_LOG_POS=520;/
/偏移位置....mysql>STARTSLAVE;//启动复制乐淘棋牌http://www.jiekeqipai.
net–确认IO线程、SQL线程都已运行,查看是否同步主库数据mysql>SHOWSLAVESTATUS\G;Re
sult:=tmp_custName;return(Result);endFUNC_CHINESE;--创建测试数据createtabletests(txtvarchar2(200));insertintotests(txt)values(''你a好,你1吃D饭S了s'');--测试函数selectFUNC_CHINESE(txt)fromtests
献花(0)
+1
(本文系mjsws首藏)