码迷,mamicode.com
首页 > 数据库 > 详细

mysql 5.6.30

时间:2016-07-14 16:04:16      阅读:420      评论:0      收藏:0      [点我收藏+]

标签:mysql   local   

系统:centos 6.5 mysql版本5.6.30


mysql段


双机互信 192.168.0.31

ssh-keygen -t rsa -P ‘‘

ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.30


双机互信 192.168.0.30

ssh-keygen -t rsa -P ‘‘

ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.31



两台机器都需要安装如下配置,完全一样就行

yum -y install cmake 

tar xf mysql-5.6.30.tar.gz

cd mysql-5.6.30

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mysqldata/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1   -DWITH_READLINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DENABLED_LOCAL_INFILE=1 -DEXTRA_CHARSETS=all

make -j 2 && make -j 2 install   


mkdir /mydata/data -pv


创建Mysql用户 

groupadd -g 3030 mysql

useradd  -u 3030 -g 3030 -r -s /sbin/nologin mysql


chown mysql.mysql /mydata/data -R

chown mysql.mysql /usr/local/mysql/* -R


echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile.d/mysql.sh


vim /etc/man.config更新Man文件,48行加

MANPATH /usr/local/mysql/man


mv /etc/my.cnf{,.bak}

cd /usr/local/mysql进入mysql安装目录中复制配置文件启动文件

cp support-files/my-default.cnf /etc/my.cnf


启动配置文件,如果有Ha可不需要开机中启动服务

cp support-files/mysql.server /etc/init.d/mysqld

chmod +x /etc/init.d/mysqld

chkconfig mysqld on


配置my.cnf文件

vim /etc/my.cnf

[mysqld]添加如下内容

basedir = /usr/local/mysql

datadir = /mydata/data

port = 3306

socket = /tmp/mysql/mysql.sock


./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/mydata/data/初始化配置 


[root@mysql1 mysql]# mysql

ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2)

配置启动完成后出现如下错误配置文件时有指定mysql.sock文件目录 然后

mkdir /var/lib/mysql  如果mysql.sock不在tmp文件中,find / -name mysql.sock

ln -sv /tmp/mysql/mysql.sock /var/lib/mysql/mysql.sock



简单主从配置 :

主服务器

    先配置log_bin日志   开启二进制日志 

     log_bin = /mysql/master/masterbin

    binlog_format = mixed

    server_id = 111

开启权限

      grant all on *.* to ‘master‘@‘192.168.0.%‘ identified by ‘masterss‘

      show master status;


从服务器

    配置relay_bin日志   开启中继日志 

    relay_log = /mysql/relay/relay_log

    binlog_format = mixed     格式为混杂模式

    server_id = 222                server id主从需不从


先测试从服务器是否能连接主服务器    mysql -u master -h 192.168.0.x -pmasterss

    能则继续,不能请检查iptables跟selinux是否开启,开启请关闭或者放行3306端口


进入Mysql中定义主服务器配置 user是主服务器中定义的,logfile必须跟主服务器保持一致,查询方式 show master logs;

change master to master_user=‘192.168.0.x‘,master_user=‘master‘,master_password=‘masterss‘,master_log_file=‘masterbin.000003‘,master_log_pos=120;

start slave ;开启slave

show slave status;            以下两个必须是yes,如有同步io错误请检查 log_file跟log_pos这两个必须跟主服务器日志保持一样

       Slave_IO_Running: Yes

       Slave_SQL_Running: Yes


然后检查是否成功,主服务器中新建一个数据库 create database xxtest;


从服务器中使用 show databases; 查询能查询到数据库表示已经创建成功,如果没有请重新检查slave status


定义脚本监控slave是否正常

#!/bin/bash

Status=`mysql -uroot -pxiongge -e ‘show slave status\G‘ | grep "Slave_IO_Running" | awk -F: ‘{print $NF}‘ | sed ‘s/ \(Yes\)/\1/‘`


if [ $Status != "Yes" ]; then

        echo "这里可以定义邮箱"    #如果有sendmail可以直接mail ..xxx.com.

else

        echo "123" &>/dev/null

fi

两个状态将grep更改一下就成,写两个脚本更佳、然后在crontab中定义一下计划任务,为no发送邮件、yesi输出信息

crontab -e 

每分钟监控 */1 * * * * xx/xx.sh

本文出自 “xiong” 博客,转载请与作者联系!

mysql 5.6.30

标签:mysql   local   

原文地址:http://xiong51.blog.51cto.com/5239058/1826190

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!