[主从数据库 的配置]
数据库服务
主可以把数据复制到从
从不能复制数据到主
1、互为主主 (数据可以互相拷贝)
2、互为主从 ()
3、一个主、一个从
1、安装mariadb 的前提
(Yum 和 IP)详情请看 Linux的基础操作
1)有mysql1(主角)、mysql2(备角)
2) mysql1(主角)、mysql2(备角) 都配置好 同一网段的网络
3)mysql1(主角)、mysql2(备角)都配置好yum源
2、安装主从数据库
主备数据库里都安装
[root@localhost ~]# yum -y install mariadb mariadb-server
[root@localhost ~]# systemctl start mariadb
[root@localhost ~]# systemctl enable mariadb 启动mariadb,并设为开机自启动(这样才能初始化)
3、初始化数据库并配置文件
[root@localhost ~]# mysql_secure_installation
这里(y,y,n,y,y) 记住这里输入的数据库密码
mysq1
[root@localhost ~]# vi /etc/my.cnf
[mysql]
server-id = 10 这里ID用IP的最后一位
log-bin = mysql-bin 这句是宣告 是主数据库
mysq2
[root@localhost ~]# vi /etc/my.cnf
[mysq2]
server-id = 20
4、修改主机名,域名关闭防火墙和selinux
mysq1
[root@localhost ~]# hostnamectl set-hostname mysql
[root@localhost ~]# bash
[root@mysq1 ~]# vi /etc/hosts
192.168.100.10 mysql1
192.168.100.20 mysql2
[root@mysq1 ~]# systemctl stop firewalld
[root@mysq1 ~]# systemctl enable firewalld
[root@mysq1 ~]# setenforce 0
mysql2
[root@localhost ~]# hostnamectl set-hostname mysql2
[root@localhost ~]# bash
[root@mysql2 ~]# vi /etc/hosts
192.168.100.10 mysql1
192.168.100.20 mysql2
[root@mysq2 ~]# systemctl stop firewalld
[root@mysq2 ~]# systemctl enable firewalld.
[root@mysq1 ~]# setenforce 0
5、登陆到数据库赋予权限
mysq1
[root@mysq1 ~]# mysql -uroot -p000000 密码是初始化时设置的
[root@mysq1 ~]# grant all privileges on *.* to root@'%' identified by '000000'; root登陆mysql1上时对所有库的所有表有读写权限
[root@mysq1 ~]# grant replication slave on *.* to 'user'@'mysql2' identified by '000000'; 赋予mysq2有复制的权限
mysq2
[root@mysq2 ~]# mysql -uroot -p000000
[root@mysq2 ~]# grant all privileges on *.* to root@'%' identified by '000000';
[root@mysq2 ~]# change master to master_host='mysql1',master_user='user',master_password='000000'; 设mysq1为主。mysq2备
[root@mysq2 ~]# start slave;
[root@mysq2 ~]# show slave status\G; 查看状态
6、可以用mysql语句来测试
mysql1:
[root@mysq1 ~]# mysql -uroot -p000000 登陆数据库
show databases;
create database test; 创建test这个库
use test; 进入test这个库
create table student(id int not null primary key,name varchar)); 创student这个表
insert into student values('2016081111','张三') 插入一行数据
mysql2:
[root@mysq2 ~]# mysql -uroot -p000000
show databases; 查询库内容
use test;
show tables; 展示所有表
select * from student; 查询student表内容
云计算是一种服务模型,通过网络的方式,获取资源(计算,存储,网络)