layout: post
title: MySQL数据库(三)日志、主从复制、分库分表、读写分离
description: MySQL数据库(三)日志、主从复制、分库分表、读写分离
tag: 数据库
错误日志默认存放目录为 /var/log/,默认的日志文件名为mysql.log。
查看日志位置的指令为:
show variables like '%log_error%'
错误日志对于错误的记录和分析更加详细!

二进制日志记录了所有的DDL和DML语句,即记录了所有数据库表和数据库数据的变更。
show variables like '%log_bin%'


二进制无法直接读取,因此需要通过二进制查询工具mysqlbinlog来查看

二进制日志清理与删除:

查询是使用频繁的操作,默认是关闭的!


主从复制是将主数据库的DDL和DML操作通过二进制日志传到从库服务器中,然后在从库上对这些日志重新执行(也叫重做),从而使得从库和主库数据保持同步。
MySQL支持一台主库同时向多台从库进行复制,从库同时也可以作为其他服务器的主库实现链装复制。
这样做的好处主要体现在以下三个方面:


1、准备两台安装好mysql且能远程访问的服务器。

2、主库配置步骤:
a、修改配置文件
b、重启MySQL服务器
c、登录mysql,创建远程连接账号,赋予主从赋值权限。
d、通过指令查看二进制日志文件


3、从库配置步骤:
a、修改配置文件 /etc/my.cnf,设置从库只读,集群id
b、重启MySQL服务。
c、登录mysql,设置主库配置
d、开启同步操作
e、查看主从同步状态



分库分表的核心思想是将数据分散存储,使得单一数据库/表的数据量变小来缓解单一数据库性能问题,从而提升数据库整体性能。


垂直拆分:

水平拆分:


