为什么要进行mysql集群搭建
如果我的项目中应用单台数据库,如果因为不可抗因素导致设施损坏,数据失落,将间接影响用户的应用.须要须要进行优化.
数据库备份形式
数据库冷备份
阐明:定期将数据库中的文件通过sql的形式进行转储.保证数据在肯定工夫之内失去备份.
毛病: 因为是定期备份,所以可能会导致数据的失落.
数据库的冷备份 是复原数据的最初无效的伎俩.所以始终连续应用.
数据库热备份
阐明: 因为数据库的同步的操作在工作中特地的频繁,所以作为数据库的开发人员,也设计了数据库如何进行同步.
同步的步骤:
1、数据库主库如果须要启动同步策略,则必须开启二进制日志文件.(默认条件下是敞开的.)
2、当用户"更新"数据库时,主库会将更新信息写入二进制日志文件中. (主库工作完结)
从库会利用IO线程读取主库中更新的二进制日志文件.
3、IO线程会将读取到的信息采纳异步的形式先保留到中继日志中.(中继长期存储数据的媒介)
4、SQL线程会读取中继日志中的信息,之后将sql语句同步到从数据库中.至此实现了主从的同步…
实现数据库主从搭建
首先要筹备两台虚拟机,别离装置Mariadb,两台虚拟机的mac网络地址要不一样,而后批改为本人想要的ip地址。
1、批改虚拟机ip地址
顺次执行如下命令,批改ip地址:
cd /etc/sysconfig/network-scripts/vim ifcfg-ens33
重启网卡,检测ip地址是否正确
server network restart
2、别离下载安装mariadb数据库(详见另一篇《Linux下mariadb的装置》)
3、开启主库二进制文件
命令: vim /etc/my.cnf
4、重启主数据库
命令:
cd /var/lib/mysql/
systemctl restart mariadb
5、配置从数据库
5、重启从数据库
6、实现主从挂载
在Navicat中执行如下命令:
主库: 192.168.126.129 master
从库: 192.168.126.130 slave
7、查看主库状态
命令:show master status
8、实现主从挂载
从库中执行如下代码:
CHANGE MASTER TO MASTER_HOST="xxx.xxx.xxx.xxx"#主库的ip地址MASTER_PORT=3306#主库的端口MASTER_USER="xxxx"#主库账号MASTER_PASSWORD="xxxx"#主库明码MASTER_LOG_FILE="mysql-bin.000001"#主库的二进制日志名称MASTER_LOG_POS=245#主库的Position
如果因为数据库屡次重启导致生成了多个二进制日志文件,能够将多余文件删除后,重启数据库,再次执行挂载命令即可