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下安装及搭建主从复制的更多相关文章

  1. Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)

    Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)   关于LAMP的各种知识,还请大家自行百度谷歌,在这里就不详细的介绍了,今天主要是介绍一下在Centos下安装,搭建一 ...

  2. Linux CentOS下安装、配置mysql数据库

    假设要在Linux上做j2ee开发.首先得搭建好j2ee的开发环境.包含了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有具体解说了Linux学习之CentOS(七)--Cen ...

  3. Centos下安装mysql 总结

    一.MySQL安装 Centos下安装mysql 请点开:http://www.centoscn.com/CentosServer/sql/2013/0817/1285.html 二.MySQL的几个 ...

  4. Centos下安装mysql 和挂载硬盘

    一,CentOS下安装Mysql 6.5 1.检测系统是否自带安装mysql # yum list installed | grep mysql 2.删除已经安装的Mysql # yum -y rem ...

  5. CentOS下安装hadoop

    CentOS下安装hadoop 用户配置 添加用户 adduser hadoop passwd hadoop 权限配置 chmod u+w /etc/sudoers vi /etc/sudoers 在 ...

  6. centos下安装php环境

    centos下安装php环境 安装apache yum install httpd-devel 启动apache /etc/init.d/httpd start 安装mysql yum install ...

  7. CentOS下安装yum源的流程和操作

    一般公司都用Linux来搭建服务器,Linux安装软件时能够用yum安装依赖包是一件非常简单而幸福的事情,因为你只需一个简单的安装命令yum install []即可安装相应的软件,yum工具会自动的 ...

  8. CentOS下安装MYSQL8.X并设置忽略大小写

    安装 在官网上下载:mysql80-community-release-el7-2.noarch.rpm.安装方式与5.7基本相同.详细安装过程见:CentOS下安装mysql5.7和mysql8.x ...

  9. CentOS下安装使用start-stop-daemon

    CentOS下安装使用start-stop-daemon 在centos下下了个自启动的服务器脚本 执行的时候发现找不到start-stop-daemon命令 好吧 执行手动编译一下 加上这个命令 w ...

随机推荐

  1. qml:: QVariant转为自定义类型

    QVariant可以实现C++与qml之间的自定义类型的传递: 以QObject类型为例: 1.  QObject转为QVariant QVariant var = QVariant::fromVal ...

  2. scrapy基础二

    应对反爬虫机制 ①.禁止cookie :有的网站会通过用户的cookie信息对用户进行识别和分析,此时可以通过禁用本地cookies信息让对方网站无法识别我们的会话信息 settings.py里开启禁 ...

  3. jvm_tool jconsole/ jprofiler/ JProbe/ VirtualVm/ TPV/ YourKit/ ITCAM/ MAT/ MDD4J

    S 学习jvm,关于MAT an internal error occurred during:"Parsing heap dump" from问题 https://www.cnb ...

  4. 【openssl】利用openssl完成X509证书和PFX证书之间的互转

    利用openssl完成X509证书和PFX证书之间的互转 # OpenSSL的下载与安装: 1.下载地址: 官方网址—— https://www.openssl.org/source/ OpenSSL ...

  5. GitHub for Windows客户端使用操作流程

    Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理.作为一个程序员,我们需要掌握其用法. 作为开源代码库以及版本控制系统,Github目前拥有140 ...

  6. Dubbo优雅关机原理

    Dubbo是通过JDK的ShutdownHook来完成优雅停机的 所以如果用户使用 kill -9 PID 等强制关闭命令,是不会执行优雅停机的 只有通过 kill PID时,才会执行 原理: · 服 ...

  7. Tomcat虚拟路径访问本地图片失败的问题

    开发过程中,把图片放在本地一个磁盘的路径下.网上搜了下,可以使用tomcat虚拟路径访问本地图片. 这样就不用把图片放在整个项目的webapp目录下了. 1.找到tomcat的server.xml文件 ...

  8. IQueryable & IEnumberable 区别

    Namespace And Inheritances Relations ? 1 2 3 4 5 6 7 8 9 Namespace: System.Collections     [ComVisib ...

  9. Spark源码剖析 - SparkContext的初始化(二)_创建执行环境SparkEnv

    2. 创建执行环境SparkEnv SparkEnv是Spark的执行环境对象,其中包括众多与Executor执行相关的对象.由于在local模式下Driver会创建Executor,local-cl ...

  10. springBoot打包发布项目------jar包

    这两年微服务很流行,这里简单介绍一下如何将自己使用idea写的微服务打包成一个可执行的jar包,并发布到linux服务器的步骤.因为spring boot有内置的tomcat所以一般使用内置的tomc ...