192.168.68.160、192.168.68.162
使用yum安装部署mysql两台:
# yum install mariadb mariadb-server
查看mysql的版本信息
# mysql -V
mysql Ver 15.1 Distrib 5.5.65-MariaDB, for Linux (x86_64) using readline 5.1
启动mysql服务,查看系统中是否存在mysql进程,并查看mysql的端口号:
# netstat -anp | grep mysql
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 1409/mysqld
tcp 0 0 192.168.68.163:59104 192.168.68.100:3306 ESTABLISHED 1409/mysqld
unix 2 [ ACC ] STREAM LISTENING 22206 1409/mysqld /var/lib/mysql/mysql.sock
修改配置两台mysql的主配置文件
配置第一台虚拟机
# vim /etc/my.cnf
server-id=1
log-bin=mysql-bin
relay-log=relay-log
配置第二台虚拟机
# vim /etc/my.cnf
server-id=2
log-bin=mysql-bin
relay-log=relay-log
在mysql中查看mysql二进制日志信息:
在mysql中新建一个数据库
> create database sjk;
在mysql中新建以自己姓名为首字母的用户名并授权
配置第一台MySQL里配置:
> grant all on *.* to lzg@'%' identified by '123';
配置第二台MySQL里配置:
> stop slave;
> change master to master_host='192.168.101.94',master_user='lzg',master_password='123',master_log_file='mysql-bin.000004',master_log_pos=245;
> start slave;
测试mysql主从效果:
> show slave status \G;
显示下方为双Yes则主从配置成功:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
最后进行数据测试:
主库宕机:
1、确保所有的relay log全部更新完毕,在每个从库上执行show processlist
2、更新完毕后,登录所有从库查看master.info文件,对比选择pos最大的作为新的主库,
3、然后登录这个新的主库,执行stop slave;进入主目录,删除master.Info和relay-log.info配置my.cnf文件开启log-bin文件
4、创建用于同步的用户并授权slave
5、登录另外一台从库,执行stop slave停止同步
6、执行start slave
7、修改新的master数据,测试slave是否同步更新
从库宕机:
1、查看从库上mysql的错误日志,里面有记录主从挂掉时的binlog信息。
2、有了binlog和postion信息后,只需要重新在从库上进行change master to配置即可。配置后开启slave状态,没有报错
3、查看slave状态,发现slave已经正常了,开始进行延时数据恢复。
数据库如何调优:
内核优化:根据硬件配置来进行优化 比如内存使用、TCP处理这方面的优化
配置参数的优化:我做过IO处理的常用参数、最大连接数设置、缓存使用参数的设置、慢日志的参数的设置
慢查询日志:
配置慢查询功能的方式有两种,一种是使用mysql的配置文件配置,另外一种是使用mysql命令配置。
配置文件配置:
找到[mysqld],在其下面添加如下代码即可.
slow_query_log=ON
slow_query_log_file=/usr/local/mysql/var/localhost-slow.log
long_query_time=0 log-queries-not-using-indexes = 1
配置好后,重启mysql服务
使用命令配置:
这里就简单些一个配置项就行了,其他的配置项均按照此方法配置
mysql> set slow_query_log=ON;