注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

曾国藩的博客

 
 
 

日志

 
 

centos6下安装MariaDB集群.txt  

2014-06-06 16:50:41|  分类: SQL/Oracle/Mysql |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
https://code.google.com/p/java-lib-hxzon-git/source/browse/blog/mysql/centos6%E4%B8%8B%E5%AE%89%E8%A3%85MariaDB%E9%9B%86%E7%BE%A4.txt?spec=svna008d116ce9bd3960c9e88ad5a17fcaef85402c2&r=a008d116ce9bd3960c9e88ad5a17fcaef85402c2

centos6下安装MariaDB集群

by hxzon

=========
1,配置yum源

1.1,配置MariaDB源
在/etc/yum.repos.d/下新建文件MariaDB.repo。

编辑/etc/yum.repos.d/MariaDB.repo文件内容:

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos5-x86
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

---------
1.2,配置Percona源(为了安装xtrabackup)

wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-percona http://www.percona.com/downloads/RPM-GPG-KEY-percona

vi /etc/yum.repos.d/Percona.repo

[percona]
name = CentOS $releasever - Percona
baseurl=http://repo.percona.com/centos/$releasever/os/$basearch/
enabled = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-percona
gpgcheck = 1

==========
2,下载安装

2.1,安装Galera集群:
yum install MariaDB-Galera-server MariaDB-client galera
(缺失的依赖MariaDB-common,openssl098e,perl-DBI)

--
问题1:可能会和已有的mysql包冲突
查看是否有mysql相关的包已安装:
rpm -qa mysql*
显示安装了mysql-libs。
移除mysql-libs:
不要用以下方式移除,
yum remove mysql-libs
有很多包依赖于mysql-libs,这些也会被移除。
另一种卸载方式:
rpm -e --nodeps mysql-libs-5.1.*
注意,一定要加:--nodeps,否则也会将crontab等依赖卸掉,这样就不是我们的初衷了。


-----
2.2,安装xtrabackup

yum install xtrabackup

============
3,启动

启动数据库:
mysqld --wsrep_cluster_address=gcomm://

连接数据库:
mysql

创建用于同步数据库的mysql sst帐号:
[root@mdb-01 ~]# mysql -u root -p
mysql> GRANT USAGE ON *.* to sst@'%' IDENTIFIED BY 'sstpass123';
mysql> GRANT ALL PRIVILEGES on *.* to sst@'%';
mysql> FLUSH PRIVILEGES;
mysql> quit


修改mysql root的密码:
[hxzon@langchao yum.repos.d]$ mysqladmin -u root password 'passwd'

关闭数据库:
service mysql stop

========
4,重新配置

4.1,重新配置:
cp /usr/share/mysql/wsrep.cnf /etc/my.cnf.d/

vi /etc/my.cnf.d/wsrep.cnf

只需要修改如下4行:
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://Node-B-IP:4567"
wsrep_sst_auth=sst:sstpass123
wsrep_sst_method=xtrabackup

注意1:64位则使用/usr/lib64/galera/libgalera_smm.so
注意2:"gcomm://" 是特殊的地址,仅仅是Galera cluster初始化启动时候使用。
如果集群启动以后,我们关闭了第一个节点,那么再次启动的时候必须先修改
"gcomm://"为其他节点的集群地址,例如
wsrep_cluster_address="gcomm://Node-B-IP:4567"
注意3:如果没有安装xtrabackup,则wsrep_sst_method=rsync。

-------
4.2,启动数据库集群的第一个节点:
mysqld --wsrep_cluster_address=gcomm://

=========
5,添加其他节点

与第一个节点的配置相同,除了wsrep_cluster_address="gcomm://Node-A-IP:4567"

启动新节点:
mysqld
--------
查看集群状态:
mysql -u root -p

>show status like 'wsrep_%';

wsrep_ready 为ON,则说明MariaDB Galera集群已经正确运行了。
wsrep_cluster_size 标明了组成集群的节点个数。


=========
6,连接数据库(另一个终端)

mysql -u root -p

连接成功后,
查看数据库:show databases;
进入数据库:use mysql;
查看表:show tables;

连接上某一个节点,对其所做的操作,会同步到其它节点。

------
配置远程访问,MariaDB为了安全起见,默认情况下绑定ip( 127.0.0.1)。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'passwd' WITH GRANT OPTION;

flush privileges;

第一句中"%"表示任何主机都可以远程登录到该服务器上访问。如果要限制只有某台机器可以访问,将其换成相应的IP即可,如:

GRANT ALL PRIVILEGES ON *.* TO root@"172.168.193.25" IDENTIFIED BY "root";

第二句表示从mysql数据库的grant表中重新加载权限数据。
因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。




============
其它备用

1,

/etc/init.d/mysql start

service mysql start

都无法正常启动。

2,如果系统的防火墙开着(or behind a hardware firewall or NAT)你必须放开mysql使用的TCP端口,通常都是3306。

3,大小写敏感

用root帐号登录后,在/etc/my.cnf 中的[mysqld]后添加添加lower_case_table_names=1,重启MYSQL服务,这时已设置成功:不区分表名的大小写;
lower_case_table_names参数详解:
lower_case_table_names = 0
其中 0:区分大小写,1:不区分大小写
  评论这张
 
阅读(701)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018