我将从MySQL复制迁移到Percona XtraDB集群 。 我遇到的问题是一个节点正在x86上运行,而且由于问题的解体,我无法从Percona repo安装Percona-XtraDB-Cluster-server :
... --> Finished Dependency Resolution 1:Percona-XtraDB-Cluster-server-5.5.27-23.6.356.rhel5.i686 from percona has depsolving problems --> Missing Dependency: Percona-XtraDB-Cluster-galera is needed by package 1:Percona-XtraDB-Cluster-server-5.5.27-23.6.356.rhel5.i686 (percona) Error: Missing Dependency: Percona-XtraDB-Cluster-galera is needed by package 1:Percona-XtraDB-Cluster-server-5.5.27-23.6.356.rhel5.i686 (percona) You could try using --skip-broken to work around the problem You could try running: package-cleanup --problems package-cleanup --dupes rpm -Va --nofiles --nodigest
如您所见, Percona-XtraDB-Cluster-galera不存在于回购中 。
我如何解决这个问题?
不知道为什么Percona回购中缺lessPercona-XtraDB-Cluster-galera 。 但是你可以从源代码编译 。
首先,下载并安装Galera wsrep提供程序 :
Name : galera Relocations: (not relocatable) Version : 23.2.1 Vendor: Codership Oy Release : 1.rhel5 Build Date: Sat 19 May 2012 04:16:24 AM ICT Install Date: Mon 10 Sep 2012 05:22:01 PM ICT Build Host: centos5_32builder.localdomain Group : System Environment/Libraries Source RPM: galera-23.2.1-1.rhel5.src.rpm Size : 22430313 License: GPLv3 Signature : (none) Packager : Codership Oy URL : http://www.codership.com/ Summary : Galera: a synchronous multi-master wsrep provider (replication engine) Description : Galera is a fast synchronous multimaster wsrep provider (replication engine) for transactional databases and similar applications. For more information about wsrep API see http://launchpad.net/wsrep. For a description of Galera replication engine see http://www.codership.com.
其次,下载Percona-XtraDB-Cluster的源代码并按照本指南进行安装。 请注意,由于您正在运行x86,因此通过运行以下命令来构build二进制文件:
# cd Percona-XtraDB-Cluster-5.5.27 # BUILD/compile-pentium-wsrep # make install
第三,把/etc/my.cnf改成这样:
[mysqld] # Percona XtraDB Cluster binlog_format=ROW wsrep_provider=/usr/lib/galera/libgalera_smm.so wsrep_slave_threads=2 wsrep_cluster_name=trimethylxanthine wsrep_sst_method=rsync wsrep_node_name=node2 innodb_locks_unsafe_for_binlog=1 innodb_autoinc_lock_mode=2 [mysqld_safe] wsrep_urls=gcomm://192.168.1.100:4567, \ gcomm://192.168.1.200:4567, \ gcomm://192.168.1.300:4567, \ gcomm://
不要忘记调整init脚本/etc/init.d/mysql指向相应的MySQL二进制文件:
if test -z "$basedir" then basedir=/usr #bindir=/usr/bin bindir=/usr/local/mysql/bin if test -z "$datadir" then datadir=/var/lib/mysql fi sbindir=/usr/sbin libexecdir=/usr/sbin else ...