Centos6.5使用rpm安装mysql及双主互备模式.docx_第1页
Centos6.5使用rpm安装mysql及双主互备模式.docx_第2页
Centos6.5使用rpm安装mysql及双主互备模式.docx_第3页
Centos6.5使用rpm安装mysql及双主互备模式.docx_第4页
Centos6.5使用rpm安装mysql及双主互备模式.docx_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Centos使用RPM命令安装MySQL数据1 检查MySQL及相关RPM包如果有安装,则移:rootlocalhost # rpm -qa | grep -i mysqlmysql-libs-5.1.66-2.el6_3.x86_64 rootlocalhost # rpm e nodeps mysql-libs-5.1.66-2.el6_3.x86_64 2 安装mysqlrootlocalhost rpm# rpm -ivh MySQL-server-5.6.15-1.el6.x86_64.rpm rootlocalhost rpm# rpm -ivh MySQL-devel-5.6.15-1.el6.x86_64.rpm rootlocalhost rpm# rpm -ivh MySQL-client-5.6.15-1.el6.x86_64.rpm #修改配置文件位置 rootlocalhost rpm# cp /usr/share/mysql/f /etc/f 初使化MYSQL及配置密码rootlocalhost rpm# /usr/bin/mysql_install_db rootlocalhost rpm# service mysql start rootlocalhost rpm# cat /root/.mysql_secret #查看root账号密码 # The random password set for the root user at Wed Dec 11 23:32:50 2013 (local time): qKTaFZnl rootlocalhost # mysql -uroot pqKTaFZnl mysql SET PASSWORD = PASSWORD(123456); #设置密码为123456 mysql exit rootlocalhost # mysql -uroot -p123456 3 允许远程登录mysql use mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql select host,user,password from user;1. +-+-+-+2. |host|user|password|3. +-+-+-+4. |localhost|root|*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B|5. |localhost.localdomain|root|*A4B8196FF869F64E0119B231785E5946EDBA5E26|6. ||root|*A4B8196FF869F64E0119B231785E5946EDBA5E26|7. |:1|root|*A4B8196FF869F64E0119B231785E5946EDBA5E26|8. +-+-+-+mysql update user set password=password(root) where user=root; Query OK, 3 rows affected (0.01 sec) Rows matched: 4 Changed: 3 Warnings: 0 mysql update user set host=% where user=root and host=localhost; Query OK, 1 row affected (0.04 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql flush privileges; Query OK, 0 rows affected (0.00 sec) 4 设置开机自启动rootlocalhost # chkconfig mysql on rootlocalhost # chkconfig -list | grep mysql mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off 5 配置字符集修改字符集和数据存储路径配置/etc/f文件,修改数据存放路径、mysql.sock路径以及默认编码utf-8 client password = 123456 port = 3306 default-character-set=utf8 mysqld port = 3306 character_set_server=utf8 character_set_client=utf8 collation-server=utf8_general_ci #(注意linux下mysql安装完后是默认:表名区分大小写,列名不区分大小写; 0:区分大小写,1:不区分大小写) lower_case_table_names=1 #(设置最大连接数,默认为 151,MySQL服务器允许的最大连接数16384; ) max_connections=1000 mysql default-character-set = utf8 6 修改MySQL数据库目录的位置MySQL默认安装位置1. /var/lib/mysql/ #数据库目录 2. /usr/share/mysql #配置文件目录 3. /usr/bin #相关命令目录 4. /etc/init.d/mysql #启动脚本1、首先我们需要关闭MySQL,命令如下: service mysqld stop2、然后是转移数据,为了安全期间,我们采用复制的命令cp,先找到mysql的原目录 rootlocalhost cd /var/lib rootlocalhost ls 运行这个命令之后就会看到mysql的目录了,然后执行cp命令 rootlocalhost cp -a mysql /home/mysql_data/ 这样就把数据库复制到/home/mysql_data下面去了 注意:(-a这个参数一定要带着,否则复制过去的权限就不对了。) 如果数据库比较大的话,时间会比较长,可能会超时,具体怎么设置ssh不超时的办法,请大家自己找相关资料。3、然后我们修改配置文件,一共有三个,下面我一一说明: 修改第一个文件:修改之前先备份cp /etc/f /etc/fbak rootlocalhost vi /etc/f 打开之后修改datadir的目录为/home/mysql_data/mysql, 把socket改成/home/mysql_data/mysql/mysql.sock,为了安全起见,你可以把原来的注释掉,然后重新加入一行,改成现在的目录。 修改第二个文件:修改之前先备份 rootlocalhost cp /etc/init.d/mysqld /etc/init.d/mysqldbak vi /etc/init.d/mysqld 注意:准确的位置是/etc/rc.d/init.d/mysqld,由于这里这里有一个/etc/init.d到/etc/rc.d/init.d的映射,所以用上面的命令即可,也简单。 把其中datadir/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:/home/mysql_data/mysql 修改第三个文件:修改之前先备份 rootlocalhost cp /usr/bin/mysqld_safe /usr/bin/mysqld_safebak vi /usr/bin/mysqld_safe 这里也是修改datadir的目录为/home/mysql_data/mysql7 下面需要建立一个mysql.sock的链接: ln -s /home/mysql_data/mysql/mysql.sock /var/lib/mysql/mysql.sock 至此所有的修改都完成了,下面启动mysql service mysqld start8 配置MySQL主主互备模式及Keepalived的配置1) 配置文件/etc/f,在使用双主库配置文的基础上,分别加入以下配置项:DB-1DB-2log-bin=mysql-binlog-bin=mysql-binserver-id=1server-id=2relay-log=mysql-relay-binrelay-log=mysql-relay-binreplicate-wild-ignore-table=mysql.%replicate-wild-ignore-table=mysql.%replicate-wild-ignore-table=test.%replicate-wild-ignore-table=test.%replicate-wild-ignore-table=information.%replicate-wild-ignore-table=information.%加入配置项后重新启动MySQL。2) 创建复制用户授权a) 登录DB1和BD1的MySQL执行下列语句:mysqlgrant replication slave on *.* to repl_user* identified by repl_passwd;注:上是操作是创建同步用户和密码,*表示所有IP都可以访问,*有也可换成指定。b) 在DB2的MySQL执行下列语句:mysqlshow master status;执行后显示:+-+-+-+-+-+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | mysql-bin.000001 | 106 | | | +-+-+-+-+-c) 记住Flie和Position项,返回DB1,执行下列语句:mysqlchange master to -master_host=IP地址, -master_user=repl_user, -master_password=repl_passwd, -master_log_flie=mysql-bin.000001, -master_pos=106d) 查看DB1的master,在DB2上做同样的操作;e) 在DB1和DB2上都执行start slave;语句。使用show slave statusG;可以查看slave的状态, Slave_IO_Running为yes表示正在运行。9 配置Keepalived实现MySQL双主高可用在配置前安装Keepalived,安装文档参考Keepalived安装文档。下面是DB服务器上的 /etc/keepalived/ keepalived.conf文件的内容。global_defs notification_email zhangming3airport notification_email_from zhangming3airport smtp_server smtp_connect_timeout 30 router_id LVS_DEVELvrrp_script check_mysqld script /etc/keepalived/mysqlcheck/check_slave.pl interval 2 weight 21vrrp_instance HA_1 state BACKUP #在DB1和DB2上均配置未BACKUP interface eth2 virtual_router_id 80 priority 100 #在DB1上设置100,在DB2设置小于100即可 advert_int 2 nopreempt #不抢占模式,只在优先级高的DB1上设置即可,DB2不设置。 authentication auth_type PASS auth_pass 1111 track_script check_mysqld virtual_ipaddress 34 #设置VIP 其中/etc/keepalived/mysqlcheck/check_slave.pl正文为:#!/usr/bin/perl -wuse DBI;use DBD:mysql;# CONFIG VARIABLES$SBM = 120;$db = ixdba;$host = $ARGV0;$port = 3306;$user = root; #设置你的用户$pw = root; #设置你的密码 # SQL query$query = show slave status; $dbh = DBI-c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论