XtraDB

pxc群集搭建

馋奶兔 提交于 2020-12-31 10:04:01
pxc群集搭建 1.环境 Percona-XtraDB 5.7.22-22-29.26-log percona-xtrabackup-24-2.4.12 192.168.99.210:3101(第一节点) 192.168.99.211:3101 192.168.99.212:3101 2.安装 安装包获取(根据操作系统类型获取不同安装包): wget https://www.percona.com/downloads/Percona-XtraDB-Cluster-LATEST/Percona-XtraDB-Cluster-5.7.22-29.26/binary/tarball/Percona-XtraDB-Cluster-5.7.22-rel22-29.26.1.Linux.x86_64.ssl102.tar.gz wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.12/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.12-1.el7.x86_64.rpm 所有节点上做以下操作: \\安装依赖包 yum install -y git scons gcc gcc-c++ openssl check cmake bison boost

CentOS 7.4部署PXC 5.7

荒凉一梦 提交于 2020-12-16 11:26:40
Percona XtraDB Cluster(下文简称PXC集群)提供了MySQL高可用的一种实现方法。PXC集群以节点组成(推荐至少3节点,便于故障恢复,后面会讨论两节点的情况),每个节点都是基于常规的 MySQL/Percona Server,意味着你可以从集群中分离出某节点单独使用。集群中每个节点都包含完整的数据。 PXC集群主要由两部分组成:Percona Server with XtraDB和Write Set Replication patches(使用了Galera library,一个通用的用于事务型应用的同步、多主复制插件)。 PXC的特性和优点: 支持多主复制 支持并行复制 读写强一致性 作为高可用方案,相比其他方案其结构和实施相对简单明了 PXC的局限和劣势: 由于PXC集群内部一致性控制的机制,事务有可能被终止,原因如下:集群允许在两个节点上通知执行操作同一行的两个事务,但是只有一个能执行成功,另一个 会被终止,同时集群会给被终止的客户端返回死锁错误(Error: 1213 SQLSTATE: 40001 (ER_LOCK_DEADLOCK)). 写入效率取决于节点中最弱的一台,因为PXC集群采用的是强一致性原则,一个更改操作在所有节点都成功才算执行成功。 所有表都要设置主键。 不支持LOCK TABLE等显式锁操作。 集群吞吐量/性能取决于短板。

Centos Cloudera Manager 6.3.0和CDH 6.3.2 安装

岁酱吖の 提交于 2020-08-09 19:05:39
前言 闲暇之时,羚羊给大家分享一下羚羊在Centos7 下安装Cloudera Manager 6.3.0和cloudera cdh 6.3.2的过程和安装过程中遇到的坑。至于为什么要选择CDH,Cloudera Manager和cdh是什么,之间又是什么关系,在这里羚羊就不做介绍了。 为什么选择CDH6.3.2这个版本,给大家看个Cloudera公司今年初发布的消息: 上面大概是说6.3.3版本以上,需要许可证,有帐号才能下载安装包,意思就是收费。所以羚羊就安装了6.3.2。至于为什么用的是Cloudera Manager 6.3.0,其实没什么问题。Cloudera Manager和CHD之间的版本兼容方面,官方是这么说: 对于Cloudera Manager和CDH,Cloudera公司使用主版本和次版本来管理:主版本+次版本+维护版本,像Cloudera Manager 6.3.0,它的主版本是6,次版本是3,维护版本是0。然后版本兼容规则是这样: Cloudera Manager <主要> + <次要> 版本必须始终等于或大于CDH <主要> + <次要> 版本。 较旧版本的Cloudera Manager可能识别不出CDH的高版本安装包来,就是不兼容。当然,最好也不要使用高版本的Cloudera Manager去安装低版本的CDH

一台安装5.5与5.6报unknown variable &apos;log-slow-queries=/home/mysql/localhost-slow.log&apos; 错解决方案

不问归期 提交于 2020-07-26 13:31:49
一台中有两个 MYSQL ,基本一个 5.5 ( rpm 包)配置文件 /etc/my.cnf ,别外一个 5.6 配置文件 /home/app/mysql5.6/my.cnf 5.6 上报错 2016-01-27 00:09:03 16056 [Note] InnoDB: Percona XtraDB (http://www.percona.com) 5.6.27-rel75.0 started; log sequence number 1763792 2016-01-27 00:09:03 16056 [ERROR] /home/app/mysql5.6/bin/mysqld: unknown variable 'log-slow-queries=/home/mysql/localhost-slow.log' 2016-01-27 00:09:03 16056 [ERROR] Aborting 2016-01-27 00:09:03 16056 [Note] Binlog end 最终原因是因为 MYSQL 是合并配置文件 的,所以也找到了 5.5 中的文件,因为 5.6 中 log-slow-queries 已经不是那参数了所以报错 解决把 /etc/my.cnf 的 log-slow-queries = /home/mysql/localhost-slow.log 注释掉

MariaDB官方手册翻译

≯℡__Kan透↙ 提交于 2020-04-13 18:34:19
【今日推荐】:为什么一到面试就懵逼!>>> MariaDB官方手册 翻译:create database语句(已提交到MariaDB官方手册) 翻译:rename table语句(已提交到MariaDB官方手册) 翻译:alter table语句(已提交到MariaDB官方手册) 翻译:标识限定符(已提交到MariaDB官方手册) 翻译:标识符命名规则(已提交到MariaDB官方手册) 翻译:database()(已提交到MariaDB官方手册) 翻译:set names(已提交到MariaDB官方手册) 翻译:锁等待超时时间wait/nowait(已提交到MariaDB官方手册) 翻译:设置字符集和排序规则(已提交到MariaDB官方手册) 翻译:set password(已提交到MariaDB官方手册) 翻译:XtraDB/InnoDB Storage Format(已提交到MariaDB官方手册) 翻译:XtraDB/InnoDB File Format(已提交到MariaDB官方手册) 翻译:set Variable(已提交到MariaDB官方手册) 翻译:赋值操作符(:=)(已提交到MariaDB官方手册) 翻译:last_value()函数(已提交到MariaDB官方手册) 翻译:group_concat()函数(已提交到MariaDB官方手册) 翻译:set子句

Locking a MySQL INNODB row in PHP

回眸只為那壹抹淺笑 提交于 2019-12-13 04:37:19
问题 I have a table called meta , with two columns name and value . In a php script, which is called by many clients concurrently, I do this:- $mysqli->multi_query("SELECT id FROM links WHERE id > (SELECT value FROM meta WHERE name='scan') LIMIT 1000;UPDATE meta SET value=value+1000 WHERE name='scan';"); or this:- $mysqli->multi_query("SELECT id FROM links WHERE id > (SELECT value FROM meta WHERE name='scan' <b>FOR UPDATE</b>) LIMIT 1000;UPDATE meta SET value=value+1000 WHERE name='scan';");

InnoDB: custom auto-increment using insert select. Can there be duplicate-key error?

↘锁芯ラ 提交于 2019-12-11 08:36:25
问题 I have a table like: idx (PK) clmn_1 Both are INTs. idx is not defined as auto-increment, but I am trying to simulate it. To insert into this table, I am using: "INSERT INTO my_tbl (idx, clmn_1) \ SELECT IFNULL(MAX(idx), 0) + 1, %s \ FROM my_tbl", val_clmn_1 Now, this works. The query that I have is about atomicity. Since I read and then insert to the same table, when multiple inserts happen simultaneous can there potentially be a duplicate-key error? And, how can I test it myself? I am using

使用docker 基于pxc镜像搭建mysql高可用集群

怎甘沉沦 提交于 2019-12-05 06:24:25
前置条件 docker已安装: 第一步:拉取镜像 docker pull percona/percona-xtradb-cluster:5.7.21 第二步:复制重命名镜像(可选) docker tag percona/percona-xtradb-cluster:5.7.21 pxc 第三步: 删除pxc原来的镜像 (可选) docker rmi percona/percona-xtradb-cluster:5.7.21 第四步:创建单独网络(可选) docker network create --subnet=172.18.0.0/24 pxc-net 第五步:准备三个数据卷 docker volume create --name v1 docker volume create --name v2 docker volume create --name v3 第六步:创建第一个节点 docker run -d -p 3301:3306 -v v1:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=jack123 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=jack123 - -privileged --name=node1 --net=pxc-net --ip 172.18.0.2 pxc 第七步

Percona XtraDB cluster--第一部分:XtraDB cluster安装 (Centos7)

我们两清 提交于 2019-12-03 21:46:03
第一步:准备三台机器 Node Server IP Hostname Node1 - 192.168.100.111 percona111 Node2 - 192.168.100.112 percona112 Node3 - 192.168.100.113 percona113 第二步:禁用防火墙(正式环境单独开启端口) $ systemctl disable firewalld 第三步:安装Percona XtraDB需要的依赖包 $ yum -y install epel-release $ yum -y install socat $ yum -y remove mariadb-libs (若已安装了mysql,则需执行此移除命令) 第四步:安装Percona XtraDB $ yum -y install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm $ sudo yum -y install Percona-XtraDB-Cluster-57 第五步:启动并配置Percona XtraDB(和MySQL一样的操作) $ sudo grep ’temporary password’ /var/log/mysqld.log

使用docker 基于pxc镜像搭建mysql高可用集群

。_饼干妹妹 提交于 2019-11-25 22:10:41
前置条件 docker已安装: 第一步:拉取镜像 docker pull percona/percona-xtradb-cluster:5.7.21 第二步:复制重命名镜像(可选) docker tag percona/percona-xtradb-cluster:5.7.21 pxc 第三步: 删除pxc原来的镜像 (可选) docker rmi percona/percona-xtradb-cluster:5.7.21 第四步:创建单独网络(可选) docker network create --subnet=172.18.0.0/24 pxc-net 第五步:准备三个数据卷 docker volume create --name v1 docker volume create --name v2 docker volume create --name v3 第六步:创建第一个节点 docker run -d -p 3301:3306 -v v1:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=jack123 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=jack123 - -privileged --name=node1 --net=pxc-net --ip 172.18.0.2 pxc 第七步