Mysql之Linux中mariadb主从复制
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主从复制的更多相关文章
- linux中mariadb的安装
在Linux中mariaDB的安装 MariaDB其实就是MySQL的分支,是为了应对MySQL的即将的闭源风险所产生的. Linux系统中软件包的格式为mysql.rpm格式. 通过yum去安装 L ...
- linux中mariadb用navicat远程连接
在Linux中创建数据库并且远程图形化工具连接 安装数据库 [root@node1 ~]# yum install mariadb-server -y #这里我使用的mariadb 其他数据库也可以 ...
- 应用mysql(Linux中安装)
当前 mysql 官网的安装教程,指明可以使用 yum 方式. 若在Ubuntu中安装,参考“Linux(Ubuntu)下MySQL的安装与配置”. MySQL YUM Repository MySQ ...
- Mysql篇--Linux中安装Mysql
一.前述 由于Windows安装Mysql非常麻烦,所以分享一篇Linux中对MySQL的搭建,废话不多说,来,come on. 二.步骤 2.1 yum安装 yum install mysql-se ...
- kali linux中mariadb加上密码
kali自带mysql.2019.4 中带得是:MariaDB.据说跟Mysql差不多.简单用了一下发现root用户可以不要密码进入Mysql! 这极不习惯,不输入密码感觉好像少了点什么.这肯定是权限 ...
- mysql在linux中安装问题和命令
1. cd / 切换到 根目录. 2. cd /root 切换到根目录下的 root目录. 3. cd .. 切换到当前目录的上级目录. 4. rpm --qa mysql 查询已经安装mysql. ...
- windows与linux中的mysql配置主从
最近在给学生讲解数据库的主从配置,由于学生电脑里面装的虚拟机是linux的,但是本机的系统是windows的,所以需要用windows中的mysql与linux中的mysql进行主从配置.下面说一下主 ...
- JAVAEE——宜立方商城13:Mycat数据库分片、主从复制、读写分离、100%Linux中成功安装Mysql的方法
1 海量数据的存储问题 如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB.对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求.这个时候NoSQL ...
- 在 Linux 中怎样将 MySQL 迁移到 MariaDB 上
自从甲骨文收购 MySQL 后,由于甲骨文对 MySQL 的开发和维护更多倾向于闭门的立场,很多 MySQL 的开发者和用户放弃了 MySQL.在社区驱动下,促使更多人移到 MySQL 的另一个叫 M ...
随机推荐
- 2019-2020-1 20199329《Linux内核原理与分析》第五周作业
<Linux内核原理与分析>第五周作业 一.上周问题总结: 虚拟机将c文件汇编成汇编文件时忘记添加include<stdio.h> gdb跟踪汇编过程不熟练 二.本周学习内容: ...
- vue2.x学习笔记(二十五)
接着前面的内容:https://www.cnblogs.com/yanggb/p/12677019.html. 过滤器 vue允许开发者自定义过滤器,可被用于一些常见的文本格式化.过滤器可以用在两个地 ...
- Vs Code中炫酷写代码插件Power Mode的安装配置
扩展栏搜索 Power Mode 安装 安装后重启vs code 文件->首选项->设置 搜索setting.json,点击在setting.json中编辑 打开之后在右侧用户设置里添加以 ...
- 微软Project Online落地中国
1月18日,微软中国宣布,从即日起,Project Online服务将正式落地中国,通过由世纪互联运营的Office 365向中国用户提供卓越的项目组合管理(PPM)联机解决方案,助力团队迅速启动项目 ...
- cobbler的网页操作
需求:安装一台服务器 1.指定两块网卡一块外网一块内网2.内网ip10.0.0.62外网为172.16.1.623.主机名为m02 开始吧! 1.添加镜像文件 2.创建ks文件 编写ks文件 附:ks ...
- [bzoj1924]P2403 [SDOI2010]所驼门王的宝藏
tarjan+DAG 上的 dp 难点在于建图和连边,其实也不难,就是细节挺恶心 我和正解对拍拍出来 3 个错误... 传送门:luogu bzoj 题目描述 有座宫殿呈矩阵状,由 \(R\times ...
- python进程/线程/协程
一 背景知识 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操作系统的其他所 ...
- python操作ansible api示例
#!/usr/bin/env python # -*- coding:utf-8 -*- import json import shutil from collections import named ...
- 域名系统(DNS)初探
1.定义 域名:又称网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称(如mail.cctv.com),用于在数据传输时对计算机的定位标识(有时也指地理位置): 域名系统 ...
- IDEA2020版使用
idea2020版本出来了,不知道小伙伴使用了吗?是不是还在为激活而烦恼呢?我来给小伙伴解决烦恼了,直接上硬货,解决方法我是在B站找到,所以分享出来! 1.直接进IDEA官网下载最近的idea,官网连 ...