Galera 10.0.20 on CentOS 6.6
Galera 10.0.20 on CentOS 6.6
0.使用场景
数据库软件:mariadb-galera-10.0.20-linux-x86_64.tar.gz
集群管理:galera-3-25.3.10
节点同步方式(xtrabackup,rsync):percona-xtrabackup-2.2.8-5059.el6.x86_64.rpm
节点同步使用sockt:socat-2.0.0-b7.tar.gz
安装galera是为了获得libgalera_smm.so;
安装xtrabackup是为了配置同步方式xtrabackup,节点数据同步的时候用到;
安装socat是由于同步数据使用socket方式进行端到端的数据交换。
数据库节点:
127.0.0.1 localhost localhost
192.168.50.10 db01 db01.mysql.com
192.168.50.20 db02 db02.mysql.com
192.168.50.30 db03 db03.mysql.com
1.系统安装
——–0.删除postfix
yum remove postfix
——–1.系统安装
參见:Linux for Mysql 系统安装规范
——-2 配置yum源
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.old
阿里镜像
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
163镜像
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
yum makecache
检查可更新的rpm包
yum check-update
更新全部的rpm包
yum update
—3.关闭防火墙和selinux
chkconfig –level 123456 iptables off
service iptables stop
/usr/sbin/sestatus -v | grep “SELinux status”
vi /etc/selinux/config
SELINUX=disabled
—4.改动各个节点hosts
vi /etc/hosts
192.168.50.10 db01 db01.mysql.com
192.168.50.20 db02 db02.mysql.com
192.168.50.30 db03 db03.mysql.com
—4.rz
yum install lrzsz -y
2.mysql安装部分
一:卸载旧版本号
使用以下的命令检查是否安装有MySQL Server
rpm -qa | grep mysql
有的话通过以下的命令来卸载掉
rpm -e mysql //普通删除模式
rpm -e –nodeps mysql
rpm -e –nodeps mysql-devel
rpm -e –nodeps mysql-libs
// 强力删除模式,假设使用上面命令删除时。提示有依赖的其他文件,
则用该命令能够对其进行强力删除
yum remove mysql-libs
二:安装MySQL
1.安装编译代码须要的包
yum -y install cmake gcc gcc-c++ autoconf automake zlib* libxml* \
ncurses ncurses-devel libtool libtool-ltdl-devel* make bison bison-devel \
openssl-devel libevent-devel \
libaio libaio-devel pam-devel boost boost-devel valgrind-devel \
libnl-devel popt-devel popt-static bzr
2.为mysql新建组和用户
groupadd mysql
useradd -s /sbin/nologin -g mysql -M mysql
passwd mysql
mysql01!
id mysql
3.设置用户的系统资源限制
vi /etc/security/limits.conf
mysql soft nproc 2047
mysql hard nproc 16384
mysql soft nofile 1024
mysql hard nofile 65536
4.编译安装
tar xf mariadb-galera-10.0.20.tar.gz
cd mariadb-10.0.20
编译安装
/*
cmake . -LH –查看cmake支持的mysql相关參数
shell> cmake . -L # overview
shell> cmake . -LH # overview with help text
shell> cmake . -LAH # all params with help text
shell> ccmake . # interactive display
又一次编译时。须要清除旧的对象文件和缓存信息
# make clean
# rm -f CMakeCache.txt
**/
cmake \
-DCMAKE_INSTALL_PREFIX=/data/mysql \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_SPHINX_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_DATADIR=/data/mysql/data \
-DMYSQL_TCP_PORT=33306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_WSREP=1 \
-DWITH_INNODB_DISALLOW_WRITES=1
make -j4
make install
三:配置MySQL
1.新建数据文件、暂时文件,改动/usr/local/mysql权限
mkdir -p /data/mysql
mkdir /data/mysql/{innodb_data,data,tmp} -p
mkdir /data/mysql/mysql_logs/{binary_log,innodb_log,query_log,slow_query_log,error_log} -p
2.改动权限
chown -R mysql /data/mysql
chgrp -R mysql /data/mysql
3.改动參数
rm -rf /etc/my.cnf
vi /data/mysql/my.cnf
链接文件
ln -fs /data/mysql/my.cnf /etc/my.cnf
ll /etc/my.cnf
lrwxrwxrwx. 1 root root 23 Nov 18 17:30 /etc/my.cnf -> /data/mysql/my.cnf
chown -R mysql /data/mysql
chgrp -R mysql /data/mysql
5.初始化数据库
cd /data/mysql/scripts
./mysql_install_db –defaults-file=/etc/my.cnf –user=mysql –basedir=/data/mysql \
–datadir=/data/mysql/data
6.启动MySQL
chown -R mysql /data/mysql
chgrp -R mysql /data/mysql
–6.1建议安全启动
/data/mysql/bin/mysqld_safe &
/data/mysql/bin/mysqld_safe –datadir=’/data/mysql/data’ &
–6.2加入服务,拷贝服务脚本到init.d文件夹,并设置开机启动
cd /data/mysql/
cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
7.配置mysql用户
MySQL启动成功后。root默认没有password。我们须要设置rootpassword。
7.1改动/etc/profile文件,在文件末尾加入
vi + /etc/profile
PATH=/data/mysql/bin:$PATH
export PATH
source /etc/profile
如今。我们能够在终端内直接输入mysql进入,mysql的环境了
运行以下的命令改动rootpassword
–7.2改动mysql管理员password
1.改动当前用户password
mysql -uroot -p
SET PASSWORD = PASSWORD(‘pass01’);
flush privileges;
2.给全部的root用户设定password:
第一种方式(推荐)
# mysql -uroot -p
MariaDB [(none)]>
MariaDB [(none)]> select host,user,password from mysql.user;
+————-+——+———-+
| host | user | password |
+————-+——+———-+
| localhost | root | |
| db02.zp.com | root | |
| 127.0.0.1 | root | |
| ::1 | root | |
| localhost | | |
| db02.zp.com | | |
+————-+——+———-+
6 rows in set (0.00 sec)
update mysql.user set password = password(‘pass01’) where user = ‘root’ limit 100;flush privileges;
flush privileges;
3.删除全部匿名用户(不要删除root@localhost)
DROP USER ”@’localhost’;delete from mysql.user where user=” limit 10;commit;flush privileges;
delete from mysql.user where host=’db01.mysql.com’;flush privileges;
delete from mysql.user where host=’db02.mysql.com’;flush privileges;
delete from mysql.user where host=’db03.mysql.com’;flush privileges;
–7.3设置root用户能够远程訪问
–方法1:授权法
mysql>GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘pass01’ \
WITH GRANT OPTION;flush privileges;
select host,user,password from mysql.user;
–7.4 登录mysql
mysql -hlocalhost -uroot -ppass01
—-7.5设置linux脚本
vi + ~/.bash_profile
ocpyang set(绑定mysql到内网IP仅仅能写内网IP)
alias mysql=”mysql -U -hlocalhost -uroot -ppass01 –auto-rehash”
alias errorlog=”cat /data/mysql/mysql_logs/error_log/error.log”
alias mycnf=”cd /data/mysql”
export PATH=/data/mysql/scripts:$PATH
source ~/.bash_profile
—-7.7改动权限
chown -R mysql /data/mysql
chgrp -R mysql /data/mysql
—-7.8 常见启动错误或警告
cat /data/mysql/mysql_logs/error_log/error.log
Warning] ‘proxies_priv’ entry ‘@% root@mysql.ocp.com’ ignored in –skip-name-resolve mode.
解决的方法:
delete from mysql.proxies_priv where host=’db01.mysql.com’;commit;flush privileges;
delete from mysql.proxies_priv where host=’db02.mysql.com’;commit;flush privileges;
delete from mysql.proxies_priv where host=’db03.mysql.com’;commit;flush privileges;
—–7.9 软连接mysql的bin文件夹
ln -sf /data/mysql/bin/* /usr/bin/
3.galera相关配置
—–3.1 galera安装(參见galera安装配置)
—3.2 新建wsrep用户
GRANT RELOAD, LOCK TABLES, REPLICATION CLIENT ON . TO ‘wsrep’@’%’ IDENTIFIED BY ‘wsrep’ ;flush privileges;
CREATE USER ‘wsrep’@’localhost’ IDENTIFIED BY ‘wsrep’;
GRANT RELOAD, LOCK TABLES, REPLICATION CLIENT ON . TO ‘wsrep’@’localhost’;
FLUSH PRIVILEGES;
—3.2.3 安装socat
http://www.dest-unreach.org/socat/
http://www.dest-unreach.org/socat/download/
tar xf socat-1.7.3.0.tar.gz
cd socat-1.7.3.0
./configure
make -j4
make install
—3.2.4 改动mysql的配置文件
mkdir /etc/my.cnf.d
cd /soft/mariadb-10.0.20/support-files
cp wsrep.cnf /etc/my.cnf.d/
vi /etc/my.cnf.d/wsrep.cnf
node01
[mysqld]
wsrep_on=ON
binlog_format=ROW
default-storage-engine=innodb
为了减少冲突
innodb_autoinc_lock_mode=2
innodb_locks_unsafe_for_binlog=1
innodb_flush_log_at_trx_commit = 2 #能够提高性能。galera保证不丢数据
query_cache_size=0
query_cache_type=0
wsrep_provider=/data/mysql/lib/plugin/libgalera_smm.so #改动
wsrep_cluster_name=”galera_cluster” #改动
wsrep_cluster_address=”gcomm://192.168.50.10,192.168.50.20,192.168.50.30” #改动
wsrep_node_address=192.168.50.10 #改动
wsrep_node_name=db01 #改动
wsrep_slave_threads=4
wsrep_certify_nonPK=1
wsrep_max_ws_rows=131072
wsrep_max_ws_size=1073741824
wsrep_debug=0
wsrep_convert_LOCK_to_trx=0
wsrep_retry_autocommit=1
wsrep_auto_increment_control=1
wsrep_drupal_282555_workaround=0
wsrep_causal_reads=0
wsrep_notify_cmd=
wsrep_sst_method=xtrabackup-v2 #能够改动#rsync,xtrabackup,mysqldump
wsrep_sst_auth=root:pass01 #改动
node02
[mysqld]
wsrep_on=ON
binlog_format=ROW
default-storage-engine=innodb
为了减少冲突
innodb_autoinc_lock_mode=2
innodb_flush_log_at_trx_commit = 2 #能够提高性能。galera保证不丢数据
query_cache_size=0
query_cache_type=0
wsrep_provider=/data/mysql/lib/plugin/libgalera_smm.so #改动
wsrep_cluster_name=”galera_cluster” #改动
wsrep_cluster_address=”gcomm://192.168.50.10,192.168.50.20,192.168.50.30” #改动
wsrep_node_address=192.168.50.20 #改动
wsrep_node_name=db02 #改动
wsrep_slave_threads=4
wsrep_certify_nonPK=1
wsrep_max_ws_rows=131072
wsrep_max_ws_size=1073741824
wsrep_debug=0
wsrep_convert_LOCK_to_trx=0
wsrep_retry_autocommit=1
wsrep_auto_increment_control=1
wsrep_drupal_282555_workaround=0
wsrep_causal_reads=0
wsrep_notify_cmd=
wsrep_sst_method=xtrabackup-v2 #能够改动#rsync,xtrabackup,mysqldump,xtrabackup-v2
wsrep_sst_auth=root:pass01 #改动
node03
[mysqld]
wsrep_on=ON
binlog_format=ROW
default-storage-engine=innodb
为了减少冲突
innodb_autoinc_lock_mode=2
innodb_locks_unsafe_for_binlog=1
innodb_flush_log_at_trx_commit = 2 #能够提高性能。galera保证不丢数据
query_cache_size=0
query_cache_type=0
wsrep_provider=/data/mysql/lib/plugin/libgalera_smm.so #改动
wsrep_cluster_name=”galera_cluster” #改动
wsrep_cluster_address=”gcomm://192.168.50.10,192.168.50.20,192.168.50.30” #改动
wsrep_node_address=192.168.50.30 #改动
wsrep_node_name=db03 #改动
wsrep_slave_threads=4
wsrep_certify_nonPK=1
wsrep_max_ws_rows=131072
wsrep_max_ws_size=1073741824
wsrep_debug=0
wsrep_convert_LOCK_to_trx=0
wsrep_retry_autocommit=1
wsrep_auto_increment_control=1
wsrep_drupal_282555_workaround=0
wsrep_causal_reads=0
wsrep_notify_cmd=
wsrep_sst_method=xtrabackup-v2 #能够改动#rsync,xtrabackup,mysqldump,xtrabackup-v2
wsrep_sst_auth=root:pass01 #改动
echo ‘!includedir /etc/my.cnf.d/’ >>/etc/my.cnf
—4.使用rsync、xtrabackup、mydupm
–4.1 使用rsync
yum -y install rsync
tar xvzf socat-2.0.0-b8.tar.gz
cd socat-2.0.0-b8
./configure
make & make install
–强烈建议将xtrabackup和socat加入path
vi /etc/profile
PATH=/data/mysql/bin:/usr/local/bin/socat:$PATH
export PATH
ln -sf /usr/local/bin/socat /usr/sbin/
—–4.2 使用xtrabackup(推荐)
tar xf Percona-XtraBackup-2.2.11-r7956d1d-el6-x86_64-bundle.tar
yum localinstall -y percona-*
—5.初始化启动
–方法1:
改动 my.cnf 并设置 wsrep_cluster_address=gcomm:// ,启动后再来改动配置.
–方法2:(推荐)
使用以下这个命令来启动 mysql (支持 RedHat 和 CentOS 系统)
第一个节点启动和其他的两个节点有些不同
/data/mysql/bin/mysqld_safe –datadir=’/data/mysql/data’ –wsrep-cluster-address=”gcomm://” &
其他节点启动:
/data/mysql/bin/mysqld_safe –datadir=’/data/mysql/data’ &
–node1查看日志
cat /data/mysql/data/innobackup.backup.log
—-6.各节点启动相关
netstat -lntp | grep 33306
tcp 0 0 :::33306 :::* LISTEN 3072/mysqld
pkill mysqld
NODE1先启动,其他节点无顺序.
—-7.查看群集连接情况
SELECT VARIABLE_VALUE as “cluster size” FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME=”wsrep_cluster_size”;
SHOW STATUS LIKE ‘wsrep_cluster_size’;
SHOW STATUS LIKE ‘wsrep%’;
$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i ').text(i));
};
$numbering.fadeIn(1700);
});
});
Galera 10.0.20 on CentOS 6.6的更多相关文章
- centos6.5环境使用RPM包离线安装MariaDB 10.0.20
1. 进入MariaDB官网下载MariaDB需要的RPM包 2. 使用下载软件下载所需要的RPM包, 总共4个, 并上传到CentOS主机指定目录. MariaDB-10.0.20-centos6- ...
- 使用DbVisualizer 10.0.20 查询ES中的索引时需要注意的事项
查询前5条数据 光标停在某一个查询结果框中,左下角会显示该字段的类型 查询类型是text的字段使用单引号,使用双引号查询会报错
- IEEEXtreme 10.0 - Counting Molecules
这是 meelo 原创的 IEEEXtreme极限编程大赛题解 Xtreme 10.0 - Counting Molecules 题目来源 第10届IEEE极限编程大赛 https://www.hac ...
- Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Mariadb 10.1.20 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 )
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...
- Cenos7 编译安装 Mariadb Nginx PHP Memcache ZendOpcache (实测 笔记 Centos 7.0 + Mariadb 10.0.15 + Nginx 1.6.2 + PHP 5.5.19)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...
- ceph hammer 0.94.10手动部署方法Ceph Hammer版(0.94.10)手动部署for CentOS 7.x
Ceph Hammer版(0.94.10)手动部署for CentOS 7.x --lin.wang 20190310 环境有三个节点node-1,node-2,node-3,每个节点三个ssd盘作为 ...
- Install SVN (Subversion) Server on Fedora 20/19, CentOS/Red Hat (RHEL) 6.5/5.10
Install SVN (Subversion) Server on Fedora 20/19, CentOS/Red Hat (RHEL) 6.5/5.10 Updated by JR on Mar ...
- CentOS7 编译安装 Mariadb (实测 笔记 Centos 7.0 + Mariadb 10.0.15)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...
- CentOS 7.3 CDH 5.10.0 Druid0.12.4安装记录
CentOS 7.3 CDH 5.10.0安装记录 0. 集群规划192.167.1.247 realtime247 realtime+hadoopdata192.167.1.248 broker24 ...
随机推荐
- android和ios流媒体库推荐
1基本信息编辑 Vitamio是一款 Android 与 iOS 平台上的全能多媒体开发框架,全面支持硬件解码与 GPU 渲染.从2011年8月上线到2014年1月,Vitamio 凭借其简洁易用的 ...
- 【原】cocos2d-x 2.0.4 不支持https协议 CURLE_UNSUPPORTED_PROTOCOL
我们项目组用的cocos2d-x版本还比较老,各种好的功能不能用. 今天就让我遇到一个问题,使用CCHttpClient发送http请求的时候,https协议的不支持,返回失败信息如下 errorco ...
- Ejabberd源码解析前奏--概述
一.绪论 Ejabberd是一个用Erlang/OTP写的开源即时通讯服务器,其是跨平台.分布式.容错且基于开放标准的实时通讯系统.Ejabberd是一个功能丰富的XMPP服务器,同时适合小规模 ...
- 关于UT的一些总结
本文是个人对于UT的一些想法和总结,参考时建议请查阅官方资料. 转载请注明出处:http://www.cnblogs.com/sizzle/p/4476392.html 测试思想 编写UT测试代码,通 ...
- 搞明白这八个问题,Linux系统就好学多了。
正在犹豫入坑Linux学习的同学或者已经入坑的同学,经常会问到这样八个问题.今天,这些问题我都会一一解答,希望我的看法能帮助各位同学.常言道“好的开始是成功的一半”,如果你明白了以下八个问题,就能有一 ...
- java web 学习六(servlet开发2)
一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些 ...
- awk简单使用『摘.非原创』
1 awk简介 awk是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入.一个或多个文件,或其它命令的输出.它支持用户自定义函数和动态正则表达式等先进功能,是lin ...
- Qt使用Cookies对网站操作之Get和POST
1.添加QNetwork模块: a.Qt Creator中打开.pro文件添加QT+=Network; b.VS_Qt中项目属性中Qt Project Settings中Qmodules中勾选”QNe ...
- switchomega配置
- 【STL】帮你复习STL泛型算法 一
STL泛型算法 #include <iostream> #include <vector> #include <algorithm> #include <it ...