Linux——配置主从数据库服务
主从数据库
Linux中,数据库服务有三种:互为主主,互为主从,一主一从(主从数据库)
互为主主:数据库时时更新
互为主从:数据库达到一定的的容量再更新
一主一从:在主数据库上面创建的,可以同步到从数据库;在从数据库上面创建的,并不可以同步到主数据库中
| 服务名 | mariadb |
|---|---|
| 协议名 | mysql |
| 进程名称 | mysqld |
| 端口号 | 3306 |
一、改主机名、写域名解析文件
前提:首先要配好网络,yum源
点击查看配置网络,yum
# 配置网络
# (1)虚拟交换机配置为192.168.100.0网段,网络适配器选择仅主机模式;
# (2)编辑网络配置文件:
[root@wzg ~]# cd /etc/sysconfig/network-scripts/
[root@wzg network-scripts]# vim ifcfg-ens33
#需要修改的参数为:
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.100.10
PREFIX=24
# (3)重启网络服务:
[root@wzg network-scripts]# systemctl restart network
# 配置yum源
# (1)先进入虚拟机设置,把系统镜像连接到虚拟机的光驱上;
# (2)挂载光驱里的镜像:
[root@wzg ~]# mount /dev/cdrom /media/
mount: /dev/sr0 is write-protected, mounting read-only
# (3)修改yum源配置文件:
[root@wzg ~]# cd /etc/yum.repos.d/
[root@wzg yum.repos.d]# ls
[root@wzg yum.repos.d]# vim local.repo
[rhel]
name=rhel
baseurl=file:///media
enabled=1
gpgcheck=0
# (4)清空yum源缓存并检索yum源
[root@wzg yum.repos.d]# yum clean all
[root@wzg yum.repos.d]# yum repolist
注意:mysql1和mysql2都要设置主机名和域名解析
################ mysql1和mysql2 ################
# 主数据库改为mysql1
hostnamectl set-hostname mysql1
bash
# 从数据库改为mysql2
hostnamectl set-hostname mysql2
bash
################ mysql1 ################
# 做域名解析(两边都要做)
vim /etc/hosts
加入:
192.168.100.10 mysql1
192.168.100.20 mysql2
# 拷贝到mysql2
scp /etc/hosts 192.168.100.20:/etc
二、安装服务
注意:mysql1和mysql2都要安装
################ mysql1和mysql2 ################
# 安装数据库软件包
yum -y install mariadb mariadb-server
# 启动数据库服务
systemctl start mariadb
# 设置为开机自启
systemctl enable mariadb
三、初始化数据库
注意:mysql1和mysql2都要初始化,并且要先启动才能初始化
################ mysql1和mysql2 ################
# 初始化数据库
mysql_secure_installation
回车 #默认为设置密码
y #设置密码?密码设置为000000
y #移除匿名用户?
n #不允许root远程登录?
y #移除测试数据库?
y #重新加载数据库?
四、修改配置文件
分别修改mysql1和mysql2的配置文件
################ mysql1 ################
# 编辑配置文件
vi /etc/my.cnf
加入:
[mysqld]
log-bin = mysql-bin #设置为主数据库(也就是以二进制加载日志文件)
server-id = 10 #根据IP的最后一个字段
# 重启数据库服务
systemctl restart mariadb
# 配置防火墙
firewall-cmd --permanent --add-service=mysql
firewall-cmd --reload
################ mysql2 ################
# 编辑配置文件
vi /etc/my.cnf
加入:
[mysqld]
server-id = 20
# 重启数据库服务
systemctl restart mariadb
五、设置数据库权限
分别设置mysql1和mysql2的数据库权限
################ mysql1 ################
# 进入数据库
mysql -uroot -p000000
# 设置权限(授权,复制权限)
grant all privileges on *.* to root@'%' identified by "000000";
grant replication slave on *.* to 'user'@'mysql2' identified by '000000';
################ mysql2 ################
# 进入数据库
mysql -uroot -p000000
# 设置权限(从库连接主库)
grant all privileges on *.* to root@'%' identified by "000000";
change master to master_host='mysql1',master_user='user',master_password='000000';
六、启动从数据库
在mysql2上:
################ mysql2 ################
# 启动从数据库
start slave;
# 查看状态
show slave status\G
# 可以看到Slave_SQL_Running: Yes,表示已开启从数据库
七、验证主从数据库
在mysql1上创建数据库,然后在mysql2上查看是否同步
################ mysql1 ################
# 查看当前的数据库
show databases;
# 创建一个新的(class)库
create database class;
# 进入class数据库
use class;
# 创建一个student表
create table student(ID int not null primary key,name varchar(20));
# 在表中插入一条数据
insert into student values(001,"wzg");
################ mysql2 ################
# 查看当前的数据库(可以看到上面创建的class库)
show databases;
# 进入class数据库
use class;
# 查看class库中的表(可以看到上面创建的student表)
show tables;
# 查看student表的具体信息(可以看到上面插入的一条数据)
select * from student;
# 退出数据库quit或ctrl+C键
声明:未经许可,不得转载
Linux——配置主从数据库服务的更多相关文章
- mysql 在Linux 配置 主从同步
一.主服务器相关配置 1.创建同步账户并指定服务器地址 [root@localhost ~]mysql -uroot -pmysql>use mysqlmysql>grant replic ...
- Windows下多个Mysql实例配置主从(转)
https://www.cnblogs.com/jpfss/p/8143720.html 序: 网上有很多类似的文章,也是各种百度出来的,但是对于多数刚开始接触MYSQL主从的小白来说,网上文 ...
- Windows下多个Mysql实例配置主从
序: 网上有很多类似的文章,也是各种百度出来的,但是对于多数刚开始接触MYSQL主从的小白来说,网上文章的代码里面很多技术点都没有理解,有跌打误撞碰上的,但多数都是这篇文章卡主了,换篇文章接着 ...
- postgresql+slony-i安装配置主从
slon软件下载地址:slony1-1.2.6 http://slony.info/downloads/1.2/source/ postgresql下载地址: http://www.postgresq ...
- mysql配置主从数据库
1.目的 1.1 实现数据备份 1.2 项目访问时可以实现读写分离,提高访问和操作数据的速度<读写分离好处> 2.背景 这次的主从配置主要实现主库数据的改变可以实现同步到从库中: 此次试验 ...
- keepalived配置主从备份
keepalived配置主从备份 keepalived是一个用于做双机热备(HA)的软件,常和haproxy联合起来做热备+负载均衡,达到高可用. 运行原理 keepalived通过选举(看服务器 ...
- Linux - redis主从同步
目录 Linux - redis主从同步 环境准备 配置主从同步 测试写入数据,主库写入数据,检查从库数据 手动进行主从复制故障切换 Linux - redis主从同步 原理: 从服务器向主服务器发送 ...
- docker创建mysql5.7.22并配置主从
debian系统 安装docker (参考网址:https://cloud.tencent.com/developer/article/1360720) 1.更新现有的包列表 sudo apt upd ...
- percona-mysql5.7.24使用xtrabackup工具配置主从同步
主从配置详细过程: 环境准备: 配置好服务器,主从服务器都安装并启动mysql数据库 # 添加读写账号和只读账号,应用配置中,写主库用读写账号,统计从库数据yoga只读账号 grant select, ...
随机推荐
- kubernetes基本概念 pod, service
k8s的部署架构 kubernetes中有两类资源,分别是master和nodes,master和nodes上跑的服务如下图, kube-apiserver | kubelet kube-contro ...
- [hdu7044]Fall with Fake Problem
二分$T$和$S$第一个不同的位置,即需要对于$s$,判定是否存在$T[1,s]=S[1,s]$且满足条件的$T$ (注:这里的 ...
- 流程图(flowchart)语法学习
创建流程图需要选择语言: mermaid流程中的代码包裹graph 这里写顺序end流程图方向:从上到下(TB),从下到上(BT),从左到右(LR),从右到左(RL) TB - 从上到下TD - 自上 ...
- Protocol Buffer序列化Java框架-Protostuff
了解Protocol Buffer 首先要知道什么是Protocol Buffer,在编程过程中,当涉及数据交换时,我们往往需要将对象进行序列化然后再传输.常见的序列化的格式有JSON,XML等,这些 ...
- C语言按行读入文件
getline() 函数无论一行多长,动态分配内存读入行 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <s ...
- Docker的基本使用及DockerFile的编写
前言: 最近在准备面试,在复习到Docker相关内容时,想写一些东西分享给大家然后加深一下自己的印象,有了这篇随笔. Docker的简介: docker从文件系统.网络互连到进程隔离等等,极大的简化了 ...
- 基于 Helm 快速部署 Wordpress
Helm 是 Kubernetes 中的一个开源软件包管理工具,Rainbond 从 5.3.1 版本开始支持部署 Helm 应用.实现 Helm 应用的便捷部署,访问控制.使 Rainbond 用户 ...
- k8s集群中部署Rook-Ceph高可用集群
先决条件 为确保您有一个准备就绪的 Kubernetes 集群Rook,您可以按照这些说明进行操作. 为了配置 Ceph 存储集群,至少需要以下本地存储选项之一: 原始设备(无分区或格式化文件系统) ...
- C#判断是否有中文
using System.Text.RegularExpressions; Regex reg = new Regex(@"[\u4e00-\u9fa5]"); if (reg.I ...
- Spark(二十)【SparkSQL将CSV导入Kudu】
目录 SparkSql 将CSV导入kudu pom 依赖 scala 代码 启动脚本 SparkSql 将CSV导入kudu pom 依赖 <properties> <spark. ...