master主机mysql安装配置

  1.下载mariadb(Centos7开始mysql的名字)

    (1)其它方式(不推荐):rpm安装/软件源安装

    (2)yum安装(推荐):

      ①centos官方的yum源(功能少)

      ②阿里云的yum源(精简版)

        配置yum源仓库:/etc/yum.repos.d(yum工具介绍已经配置)

        yum install mariadb-server mariadb

      ③mysql官方的yum源(下载较慢,文件完整性最好)

        A.手动配置仓库目录:

          a.找到yum仓库目录,创建repo文件-------touch /etc/yum.repos.d/mariadb.repo

          b.写入指定的mysql官方yum源           

[mariadb]

name = MariaDB

baseurl = http://yum.mariadb.org/10.1/centos7-amd64

gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

gpgcheck=1

            c.此时yum会自动的加载这个repo文件,读取内容

          d.下载mariadb数据库,服务端和客户端

        B.yum install MariaDB-server MariaDB-client

  2.启动mariadb数据库

    systemctl start mariadb---------用管理工具启动数据库

    systemcrl status mariadb-------查看状态,或者ps进程,netstat端口信息      

  3.初始化数据库,清除匿名用户,以及test数据库,保证数据库安全,允许mysql远程登录

    mysql_secure_installation---------初始化命令

    注意允许远程登陆

  4.修改mariadb数据库的的中文支持

    (1)\s查看数据库编码信息

    (2)修改配置文件(yum源安装的在/etc/my.cnf),支持中文

      vim /etc/my.cnf          

#服务端的编码添加如下内容

[mysqld]

character-set-server=utf8

collation-server=utf8_general_ci

#客户端的编码如下

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

  5.mysql远程登录的设置

    grant all privileges on *.* to root@'%' identified by '123456';---------------不授权,远程无法登陆

  6.数据库的备份与恢复

    备份-----mysqldump -uroot -p --all-databases > /tmp/alldata.sql

    恢复:

      方式一:进入数据库,执行source命令读取sql文件:

          (1)mysql -uroot -h192.168.160.134 -p

          (2)source /tmp/alldata.sql  

      方式二:使用登录命令导入数据

          mysql -uroot -p < /tmp/alldata.sql

      方式三:数据量较大时,使用第三方工具

  7.mysql主从复制(master-slave)

    主从机安装好mariadb数据库

    master主机:

      (1)修改mysql配置文件,开启binlog日志功能------vim /etc/my.cnf

#服务端添加一下代码

[mysqld]

server-id=1

log-bin=mastermysql-bin

      (2)重启数据库生效binlog日志文件--------systemctl restart mariadb

      (3)登录数据库---------mysql -uroot -p

      (4)主库master创建用于主从复制的用户---------create user 'abc'@'%' identified by '123456';

      (5)授权slave给主从复制的用户:

          grant replication slave on *.* to 'abc'@'%';

          grant select on *.* to 'abc'@'%';-------------授权查看给主从复制账号,以便后期登录使用

      (6)进行锁表,防止在主从复制设置过程中数据写入------flush table with read lock;

      (7)导出当前master主库数据,发送给slave从库,保证起点的一致性:

          mysqldump -uroot -p --all-databases > /tmp/alldata.sql

          scp /tmp/alldata.sql root@192.168.160.130:/tmp/

        (8)slave从库机读取/tmp/alldata.sql进行master主库数据同步,删除多余数据库,同时进行slave从库机配置

      (9)slave从库机配置完后才能后,解锁,进行数据写入,查看从库是否正常执---------解锁-----------unlock tables;

slave从机mysql安装配置

  下载安装同master主机

    下载mariadb-------------启动mariadb----------------是否初始化自选

  7-(8)-1.将master主机的数据库备份文件发送到slave进行恢复 

    目的是保持主从数据库的数据和配置的一致性 

    mysql -uroot -p < /tmp/alldata.sql

    删除多余的数据库

  7-(8)-2.修改slave从库机的配置文件,开启id, 设为只读模式-----------vim /etc/my.cnf

#服务端添加一下代码

[mysqld]

server-id=1000

read-only=true  

    7-(8)-3.重启slave从库机的mariadb数据库----------systemctl restart mariadb

  7-(8)-4.登录slave从库机数据库-----------mysql -uroot -p

  7-(8)-5.执行命令,建立主从复制关系

change master to master_host='192.168.160.134',  --主库master地址

master_user='abc',                --用于主从复制在主库创建的用户

master_password='123456',            --用于主从复制在主库创建的用户密码

master_log_file='mastermysql-bin.000001',       --主库biinary log日志文件,主库my.cnf配置了日志名

master_log_pos=616;             --主库数据起点(在主库mysql中执行命令show master status可以查看)

    7-(8)-6.开启从库的slave功能-----start salve;

  7-(8)-7查看从库的状态,检测是否复制成功:

    show slave status\G ;

    查看如下两个参数是否是yes,主从复制即为正确:

      Slave_IO_Running: Yes

      Slave_SQL_Running: Yes

  7-(8)-8.重启数据库进入,此时需要输入密码,也可使用主从复制账号登录,和主库机的账号密码一样,回到主机进行解锁操作

    

Mysql之Linux中mariadb主从复制的更多相关文章

  1. linux中mariadb的安装

    在Linux中mariaDB的安装 MariaDB其实就是MySQL的分支,是为了应对MySQL的即将的闭源风险所产生的. Linux系统中软件包的格式为mysql.rpm格式. 通过yum去安装 L ...

  2. linux中mariadb用navicat远程连接

    在Linux中创建数据库并且远程图形化工具连接 安装数据库 [root@node1 ~]# yum install mariadb-server -y #这里我使用的mariadb 其他数据库也可以 ...

  3. 应用mysql(Linux中安装)

    当前 mysql 官网的安装教程,指明可以使用 yum 方式. 若在Ubuntu中安装,参考“Linux(Ubuntu)下MySQL的安装与配置”. MySQL YUM Repository MySQ ...

  4. Mysql篇--Linux中安装Mysql

    一.前述 由于Windows安装Mysql非常麻烦,所以分享一篇Linux中对MySQL的搭建,废话不多说,来,come on. 二.步骤 2.1 yum安装 yum install mysql-se ...

  5. kali linux中mariadb加上密码

    kali自带mysql.2019.4 中带得是:MariaDB.据说跟Mysql差不多.简单用了一下发现root用户可以不要密码进入Mysql! 这极不习惯,不输入密码感觉好像少了点什么.这肯定是权限 ...

  6. mysql在linux中安装问题和命令

    1. cd /  切换到 根目录. 2. cd /root 切换到根目录下的 root目录. 3. cd .. 切换到当前目录的上级目录. 4. rpm --qa mysql 查询已经安装mysql. ...

  7. windows与linux中的mysql配置主从

    最近在给学生讲解数据库的主从配置,由于学生电脑里面装的虚拟机是linux的,但是本机的系统是windows的,所以需要用windows中的mysql与linux中的mysql进行主从配置.下面说一下主 ...

  8. JAVAEE——宜立方商城13:Mycat数据库分片、主从复制、读写分离、100%Linux中成功安装Mysql的方法

    1 海量数据的存储问题 如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB.对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求.这个时候NoSQL ...

  9. 在 Linux 中怎样将 MySQL 迁移到 MariaDB 上

    自从甲骨文收购 MySQL 后,由于甲骨文对 MySQL 的开发和维护更多倾向于闭门的立场,很多 MySQL 的开发者和用户放弃了 MySQL.在社区驱动下,促使更多人移到 MySQL 的另一个叫 M ...

随机推荐

  1. 解释BOM头和去掉方法

    http://www.thinkphp.cn/topic/2592.html 以上是叫你去掉bom头的,因为有些文件加载不出来就是window会以记事本的形式打开,然后默认给我们加了了bom头,有些文 ...

  2. Linux 字符串处理函数

    1 strchr 函数原型:extern char *strchr(char *str,char character) 参数说明:str为一个字符串的指针,character为一个待查找字符.     ...

  3. AtomineerUtils使用说明

    AtomineerUtils使用说明 VS2015PluginCrackAtomineer 介绍 AtomineerUtils 是国外的一款用于生成源代码注释的一款 VS 插件工具. 这款插件,支持 ...

  4. Spring Cloud sleuth with zipkin over RabbitMQ教程

    文章目录 Spring Cloud sleuth with zipkin over RabbitMQ demo zipkin server的搭建(基于mysql和rabbitMQ) 客户端环境的依赖 ...

  5. 移动端rem适配&iOS兼容

    移动端rem适配js // 默认375,750设计稿请将375替换为750 (function (doc, win) { // 移动端适配 var docEl = doc.documentElemen ...

  6. Eclipse插件svn和TortoiseSvn版本对应关系

    2019独角兽企业重金招聘Python工程师标准>>> 先说一下今天碰到问题,自己在建svn仓库和导入,导出时因为版本不一致导致的错误. 因此一定要保证Eclipse中svn插件版本 ...

  7. Spring Developer Tools 源码分析:三、重启自动配置'

    接上文 Spring Developer Tools 源码分析:二.类路径监控,接下来看看前面提到的这些类是如何配置,如何启动的. spring-boot-devtools 使用了 Spring Bo ...

  8. ACM算法--二分法--模板

    // 在单调递增序列a中查找>=x的数中最小的一个(即x或x的后继) while (l < r) { int mid = (l + r) / 2; if (a[mid] >= x) ...

  9. MySQL 数据库赋权

    1.进入数据库,查看数据库账户 # 进入数据库 mysql –u root –p ---> 输入密码... # 使用 mysql 库 use mysql; # 展示 mysql 库中所有表 sh ...

  10. 编程坑太多,Map 集合怎么也有这么多坑?一不小心又踩了好几个!

    点赞再看,养成习惯,微信搜索『程序通事』,关注就完事了! 点击查看更多历史文章 上一篇 List 踩坑文章中,我们提到几个比较容易踩坑的点.作为 List 集合好兄弟 Map,我们也是天天都在使用,一 ...