【MySQL】CentOS下安装及搭建主从复制
CentOS下安装MySQL |
1,wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
2,rpm -ivh mysql-community-release-el7-5.noarch.rpm
3,yum install mysql-community-server
4,service mysqld restart(此为重启MySQL服务命令)
5,mysql -uroot -p(此为进入MySQL命令)
至此,就算安装完毕。刚安装上MySQL时,是没有密码的,所以运行第5个命令之后,直接回车,就能进入到MySQL界面,如图,即表示成功
MySQL修改密码 |
没有密码就能进入MySQL,安全性肯定是不能保证的,所以接下来介绍一下,如何修改密码。运行以下命令即可(这里以将密码改为root为例):
use mysql;
update user set password=password("root") where user='root';
flush privileges;
exit;
检测密码是否成功,重新进入MySQL:
mysql -uroot -p
输入root之后,能看到如下界面,即为成功:
MySQL搭建主从复制 |
写在前面:搭建主从复制的前提是,都安装好了MySQL。这篇文章以192.168.243.133为主,192.168.243.132为从为例,来演示搭建过程。同时请注意,MySQL密码为root
1,133为主,132为从,从133上面,进入MySQL给132授权:
grant replication slave on *.* to 'root'@'192.168.243.132' identified by 'root';
参数说明:
用户名:root
密码:root
意为:允许192.168.243.132使用用户名为root,密码为root访问133
成功效果如图:
2,开启133的binarylog
MySQL Binary Log也就是常说的bin-log, ,是mysql执行改动产生的二进制日志文件,其主要作用有两个:
- 数据恢复
- 主从数据库。用于slave端执行增删改,保持与master同步。
编辑my.cnf这个配置文件:vi /etc/my.cnf
将以下内容保存至该配置文件中:
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
server-id=1
log-bin=mysql-bin
expire_logs_days= 7
max_binlog_size= 100m //binlog每个日志文件大小
binlog_cache_size= 4m //binlog缓存大小
max_binlog_cache_size= 512m //最大binlog缓存大小
binlog-do-db=401_itoo
lower_case_table_names=1
具体如图:
查看binary是否开启成功:
3,在133和132上面分别创建数据库。此处以401_itoo为例
创建数据库:create database 401_itoo;
4,编辑132的my.cnf文件:
编辑my.cnf配置文件:vi /etc/my.cnf
将以下内容保存至该配置文件中:
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-bin=mysql-bin
binlog_format=mixed
server-id=2
replicate-do-db=401_itoo
与133稍微有些不同,请注意。效果如图:
5,查看133的binary日志位置,这在后续配置132时会用到。
连接MySQL,使用命令查看binary:
show master status\G
具体解析:
File:日志名称
Position:日志偏移量
Binlog_Do_DB:记录日志的库
6,开启132的同步:
在132上面运行以下命令,如图(这里就自己输吧,我写在这里之后,也是需要自己手动输入的)
HOST:主节点ip
USER:133授权给132的用户名
PASSWORD:授权给132的密码
MASTER_LOG_FILE:133的日志名称
MASTER_LOG_POS:日志偏移量,需要和133的一样
如果忘记了,请回看第5步
7,查看132的slave线程是否开启:
show slave status\G
Slave_IO_Running为读取master的binaryLog的线程
Slave_SQL_Running为执行SQL的线程
这两个线程必须都为YES才可以实现主从复制
至此主从复制就搭建完了。
MySQL搭建互为主从 |
在以上配置的基础之上,将132作为master,133作为slave进行再次配置。
1,在132上面连接MySQL之后,为133授权
grant replication slave on *.* to 'root'@'192.168.243.133' identified by 'root';
2,查看132的binarylog
show master status;
3,开启133的同步(这里的步骤和 132 配置相同,我就不在这里展示了,如果忘记了,可以往上面再翻翻看)
4,查看133 slave的状态:
show slave status\G;
可能出现的错误:
解决办法:
出现上图的错误就先将slave停掉,再操作一遍,使用命令:STOP SLAVE,(此处命令必须为大写)
开启完同步之后需要打开slave,使用命令:START SLAVE(此处命令必须为大写)。
至此,搭建互为主从复制结束。
常用到的命令 |
在这个过程中有几个命令是常用到的,来总结一下(#后面为注释内容):
进入mysql:mysql -uroot -p
重启mysql:systemctl restart mysql或service mysqld restart
查看slave线程:show slave status\G
mysql授权命令:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
#参数说明:
#第一个root是mysql的用户名
#第二个root是mysql的密码
# %表示所有机器都可以通过用户名root,密码root访问该mysql
flush privileges; #使修改生效
感谢您的阅读~
【MySQL】CentOS下安装及搭建主从复制的更多相关文章
- Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)
Centos下安装配置LAMP(Linux+Apache+MySQL+PHP) 关于LAMP的各种知识,还请大家自行百度谷歌,在这里就不详细的介绍了,今天主要是介绍一下在Centos下安装,搭建一 ...
- Linux CentOS下安装、配置mysql数据库
假设要在Linux上做j2ee开发.首先得搭建好j2ee的开发环境.包含了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有具体解说了Linux学习之CentOS(七)--Cen ...
- Centos下安装mysql 总结
一.MySQL安装 Centos下安装mysql 请点开:http://www.centoscn.com/CentosServer/sql/2013/0817/1285.html 二.MySQL的几个 ...
- Centos下安装mysql 和挂载硬盘
一,CentOS下安装Mysql 6.5 1.检测系统是否自带安装mysql # yum list installed | grep mysql 2.删除已经安装的Mysql # yum -y rem ...
- CentOS下安装hadoop
CentOS下安装hadoop 用户配置 添加用户 adduser hadoop passwd hadoop 权限配置 chmod u+w /etc/sudoers vi /etc/sudoers 在 ...
- centos下安装php环境
centos下安装php环境 安装apache yum install httpd-devel 启动apache /etc/init.d/httpd start 安装mysql yum install ...
- CentOS下安装yum源的流程和操作
一般公司都用Linux来搭建服务器,Linux安装软件时能够用yum安装依赖包是一件非常简单而幸福的事情,因为你只需一个简单的安装命令yum install []即可安装相应的软件,yum工具会自动的 ...
- CentOS下安装MYSQL8.X并设置忽略大小写
安装 在官网上下载:mysql80-community-release-el7-2.noarch.rpm.安装方式与5.7基本相同.详细安装过程见:CentOS下安装mysql5.7和mysql8.x ...
- CentOS下安装使用start-stop-daemon
CentOS下安装使用start-stop-daemon 在centos下下了个自启动的服务器脚本 执行的时候发现找不到start-stop-daemon命令 好吧 执行手动编译一下 加上这个命令 w ...
随机推荐
- CodeForces755F 贪心 + 多重背包二进制优化
https://cn.vjudge.net/problem/615831/origin 题意 n个人; 计划是每个人都拿一个礼物来送给一个除了自己之外的人; 如果一个人没有送出礼物,那么它和它送礼 ...
- Python入门介绍
Python入门介绍(人生苦短,我用 Python) Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹 ...
- docker swarm(当前官网示例)
介绍 Docker Swarm 是 Docker 公司推出的官方容器集群平台,基于 Go 语言实现 作为容器集群管理器,Swarm 最大的优势之一就是 100% 支持标准的 Docker API.各种 ...
- Kafka Offset相关命令总结
Kafka Offset相关命令总结 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查询topic的offset的范围 1>.查询某个topic的offset的最小值 [ ...
- CentOS上手工部署kubernetes集群
本文完全是根据二进制部署kubernets集群的所有步骤,同时开启了集群的TLS安全认证. 环境说明 在下面的步骤中,我们将在三台CentOS系统的物理机上部署具有三个节点的kubernetes1.7 ...
- CentOS 网络设置
CentOS 网络设置有两种方式配置网络可以连接外网: 自动分配与手动设置Ip 一,自动分配ip: 新装的centos6.0,用ifconfig只显示ifcfg-lo的信息,可以用ifup eth0的 ...
- Sublime Text 3 Mac常用快捷键与注意事项
大多数情况下容易忘记的快捷键,在此整理了一下. 编辑快捷键:cmd+L:选择行(重复按下将下一行加入选择):cmd+D:选择词(重复按下时多重选择相同的词进行多重编辑):cmd+shift+D 复制光 ...
- NOIP2016(D1T2)天天爱跑步题解
首先声明这不是一篇算法独特的题解,仍然是"LCA+桶+树上差分",但这篇题解是为了让很多很多看了很多题解仍然看不懂的朋友们看懂的,其中就包括我,我也在努力地把解题的"思维 ...
- redhat开启端口
设置端口:sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT 或 /etc/init.d/iptables -I INPUT -p tc ...
- DBUtils数据库连接池
DBUtils pip install DBUtils 模式一: 为每个线程创建一个连接.(内部是通过threading.local实现的) 模式二: 创建一定个数的连接,所有线程都来连接池中获取.( ...