主从数据库

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——配置主从数据库服务的更多相关文章

  1. mysql 在Linux 配置 主从同步

    一.主服务器相关配置 1.创建同步账户并指定服务器地址 [root@localhost ~]mysql -uroot -pmysql>use mysqlmysql>grant replic ...

  2. Windows下多个Mysql实例配置主从(转)

    https://www.cnblogs.com/jpfss/p/8143720.html 序:     网上有很多类似的文章,也是各种百度出来的,但是对于多数刚开始接触MYSQL主从的小白来说,网上文 ...

  3. Windows下多个Mysql实例配置主从

    序:     网上有很多类似的文章,也是各种百度出来的,但是对于多数刚开始接触MYSQL主从的小白来说,网上文章的代码里面很多技术点都没有理解,有跌打误撞碰上的,但多数都是这篇文章卡主了,换篇文章接着 ...

  4. postgresql+slony-i安装配置主从

    slon软件下载地址:slony1-1.2.6 http://slony.info/downloads/1.2/source/ postgresql下载地址: http://www.postgresq ...

  5. mysql配置主从数据库

    1.目的 1.1 实现数据备份 1.2 项目访问时可以实现读写分离,提高访问和操作数据的速度<读写分离好处> 2.背景 这次的主从配置主要实现主库数据的改变可以实现同步到从库中: 此次试验 ...

  6. keepalived配置主从备份

    keepalived配置主从备份   keepalived是一个用于做双机热备(HA)的软件,常和haproxy联合起来做热备+负载均衡,达到高可用. 运行原理 keepalived通过选举(看服务器 ...

  7. Linux - redis主从同步

    目录 Linux - redis主从同步 环境准备 配置主从同步 测试写入数据,主库写入数据,检查从库数据 手动进行主从复制故障切换 Linux - redis主从同步 原理: 从服务器向主服务器发送 ...

  8. docker创建mysql5.7.22并配置主从

    debian系统 安装docker (参考网址:https://cloud.tencent.com/developer/article/1360720) 1.更新现有的包列表 sudo apt upd ...

  9. percona-mysql5.7.24使用xtrabackup工具配置主从同步

    主从配置详细过程: 环境准备: 配置好服务器,主从服务器都安装并启动mysql数据库 # 添加读写账号和只读账号,应用配置中,写主库用读写账号,统计从库数据yoga只读账号 grant select, ...

随机推荐

  1. OPA-Gatekeeper实验:对特定用户的更新时间窗口做限制

    实验目的 OPA-Gatekeeper可以在Kubernetes 中,通过策略来实现一些额外的管理.安全方面的限制,例如:限制特定用户在 Namespace 中的行为权限 本次实验将在test命名空间 ...

  2. java动态编译——tools.jar问题

    笔者在学习中写了一段简单的动态编译代码,但编译一直无法通过,起初认为受路径中存在汉字影响,修改路径后仍然没有解决.最终定位错误是:Java在进行动态编译的时候需要用到tools.jar资源包,若too ...

  3. gantt甘特图可拖拽、编辑(vue、react都可用 highcharts)

    前言   Excel功能强大,应用广泛.随着web应用的兴起和完善,用户的要求也越来越高.很多Excel的功能都搬到了sass里面.恨不得给他们做个Excel出来...程序员太难了... 去年我遇到了 ...

  4. uniapp中mqtt的基本使用

    参考文档: [1] https://www.hivemq.com/blog/mqtt-client-library-mqtt-js/ [2] https://www.tabnine.com/code/ ...

  5. Codeforces 986F - Oppa Funcan Style Remastered(同余最短路)

    Codeforces 题面传送门 & 洛谷题面传送门 感谢此题教会我一个东西叫做同余最短路(大雾 首先这个不同 \(k\) 的个数 \(\le 50\) 这个条件显然是让我们对每个 \(k\) ...

  6. Codeforces 1270E - Divide Points(构造+奇偶性)

    Codeforces 题目传送门 & 洛谷题目传送门 显然,直接暴力枚举是不可能的. 考虑将点按横纵坐标奇偶性分组,记 \(S_{i,j}=\{t|x_t\equiv i\pmod{2},y_ ...

  7. .NET6控制台程序使用quartz.net

    1.新建一个名为"ConsoleQuartz"的.NET6控制台程序. 2.nuget中安装Quartz和Quartz.Plugins,这2个DLL. 3.新建一个HelloQua ...

  8. 【samtools】运行报错: error while loading shared libraries:libcrypto.so.1.0.0或libncurses.so.5或libtinfow.so.5

    samtools用conda安装后,总是出现共享库缺失的报错.即便你刚安装samtools时可以用,但后面在同一环境中安装其他相关软件,有可能产生了冲突,导致库替换,因而报错. 避免这种情况,可能最好 ...

  9. NCBI SRA数据如何进行md5校验?

    下了一些sra数据库中的公共数据,因为pretech和aspera不稳定,稍微大点的文件经常传断,部分文件我只能通过本地下载再上传. 那么问题来了,sra没有md5校验,我怎么知道我数据的完整性,尤其 ...

  10. python-django使用ORM模型增删改查CRUD

    from weibo.models import WeiboUser as User user_obj = User.objects.get(pk=1) user_obj.pk Out[4]: 1 u ...