澳门新葡新京 > 行业动态 > MySQL高可用之PXC安装部署,mysql如何把一个表直接拷贝到一个新的表

MySQL高可用之PXC安装部署,mysql如何把一个表直接拷贝到一个新的表
2019-12-26 16:26

一:在新表已经建立好的情况下

 

背景:

    现在很多用户被数据库的慢的问题所困扰,又苦于花钱请一个专业的DBA成本太高。软件维护人员对数据库的了解又不是那么深入,所以导致问题迟迟不能解决,或只能暂时解决不能得到根治。开发人员解决数据问题基本又是搜遍百度各种方法尝试个遍,可能错过诊断问题的最佳时机又可能尝试一堆方法最后无奈放弃。

1,拷贝所有的字段

Preface

  朋友的环境第二天突然访问不了SQL Server,远程SQL Server用户无法登陆,但是本地SQL Server用户登录正常。

    本系列文章主要和企业IT运维人员或数据库从业者分享,如何用最快的方式解决数据库出现的问题?当问题出现时应该有的解决思路和本能的判断。让数据库问题出现时,我们不再那么慌乱,不再毫无头绪。

insert into new_table select * from old_table

 

报错:

    另外针对目前企业对数据库的应用,阐述一些最佳实践,90%的系统问题,由10%的问题导致,这里没有高大上的技术,有的只是解决那10%问题的经验。

2,拷贝部分字段表

    Yesterday I implemented a three-nodes PXC,but there were some errors when proceeding it.So I decide to research what's wrong with it.The operations and evidences shows below.

  用户XX登录失败(MicroSoft SQL Server,错误18456)

    

insert into new_table(id,name,sex) select id,name,sex from old_table

 

排查:

     Expert工具下载链接: http://zhuancloud.com/ReceptionViews/Install.html

3,拷贝部分的行

Procedure

  对与无法连接服务器的,一般的排查手段,也是最常用的手段。

 

insert into new_table select  *  from old_table where id="1"

 

  1.因为本地登录正常,那么查看1433端口是否监听。

 

4,拷贝部分的行和字段

Fisrt of all,I find out that yesterday's error is due to lack of "socat" package on first node zlm2.

  2.远程 telnet 1433 端口是不是通的。

    本系列主要通过 Expert for sqlserver  工具讲解,分为以下几个大块:

insert into new_澳门葡京真人赌场,table(id,name,sex) select id,name,sex form old_table where id='1'

 1 //Here's the error log of it.
 2 2018-08-08T08:48:18.198487+01:00 0 [Note] WSREP: Initiating SST/IST transfer on DONOR side (wsrep_sst_xtrabackup-v2 --role 'donor' --address '192.168.1.102:4444/xtrabackup_sst//1' --socket '/tmp/mysql3308.sock' --datadir '/data/mysql/mysql3308/data/' --defaults-file '/data/mysql/mysql3308/my3308.cnf' --defaults-group-suffix ''  --binlog '/data/mysql/mysql3308/logs/mysql-bin' --gtid 'bd5525ab-9a15-11e8-aa0f-4b830c783fc7:21')
 3 2018-08-08T08:48:18.200272+01:00 2 [Note] WSREP: DONOR thread signaled with 0
 4 which: no socat in (/usr/sbin:/sbin:/opt/mysql/Percona-XtraDB-Cluster-5.7.22-rel22-29.26.1.Linux.x86_64.ssl102/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin:/usr/local/zabbix/bin:/usr/local/zabbix/sbin)
 5     2018-08-08T06:48:18.782344Z WSREP_SST: [ERROR] ******************* FATAL ERROR ********************** 
 6     2018-08-08T06:48:18.784043Z WSREP_SST: [ERROR] socat not found in path: /usr/sbin:/sbin:/opt/mysql/Percona-XtraDB-Cluster-5.7.22-rel22-29.26.1.Linux.x86_64.ssl102/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin:/usr/local/zabbix/bin:/usr/local/zabbix/sbin
 7     2018-08-08T06:48:18.785926Z WSREP_SST: [ERROR] ****************************************************** 
 8 2018-08-08T08:48:18.786496+01:00 0 [ERROR] WSREP: Process completed with error: wsrep_sst_xtrabackup-v2 --role 'donor' --address '192.168.1.102:4444/xtrabackup_sst//1' --socket '/tmp/mysql3308.sock' --datadir '/data/mysql/mysql3308/data/' --defaults-file '/data/mysql/mysql3308/my3308.cnf' --defaults-group-suffix ''  --binlog '/data/mysql/mysql3308/logs/mysql-bin' --gtid 'bd5525ab-9a15-11e8-aa0f-4b830c783fc7:21': 2 (No such file or directory)
 9 2018-08-08T08:48:18.786587+01:00 0 [ERROR] WSREP: Command did not run: wsrep_sst_xtrabackup-v2 --role 'donor' --address '192.168.1.102:4444/xtrabackup_sst//1' --socket '/tmp/mysql3308.sock' --datadir '/data/mysql/mysql3308/data/' --defaults-file '/data/mysql/mysql3308/my3308.cnf' --defaults-group-suffix ''  --binlog '/data/mysql/mysql3308/logs/mysql-bin' --gtid 'bd5525ab-9a15-11e8-aa0f-4b830c783fc7:21'
10 2018-08-08T08:48:18.787610+01:00 0 [Warning] WSREP: 1.0 (zlm2): State transfer to 0.0 (zlm3) failed: -2 (No such file or directory)
11 
12 [root@zlm2 08:53:31 /data/mysql/mysql3308/data]
13 #rpm -qa|grep socat
14 
15 [root@zlm2 09:11:08 /data/mysql/mysql3308/data]
16 #yum install socat
17 ... //Omitted.
18 
19 Installed:
20   socat.x86_64 0:1.7.3.2-2.el7                                                                                                                       
21 
22 Complete!

  经过排查发现,监听正常,telnet 也是通的。

澳门葡京赌场官网, 

二:在新表还没有建的情况下

 

  这个时候就开始犯愁了,telnet 通的按理没理由无法连接到远程服务器上。于是我使用SQLCMD登录仔细看看 18456的错误的state 到底是多少,发现State是1。

写给运维兄弟

  

新蒲京在线,方案一:

Restart the PXC mysqld on zlm2.

  到这里就无解了,从来没见过这样的情况。

MySQL高可用之PXC安装部署,mysql如何把一个表直接拷贝到一个新的表。Expert 诊断优化系列------------------你的CPU高么?

    

上一篇:没有了 下一篇:没有了