MYSQL的主从复制和分区技术主要是解决服务器负载均衡的策略。
课程分下面四点来讲解
1.MySQL用户授权
2.MySQL bin-log日志
3.MySQL主从复制
4.MySQL分区技术
两台服务器ip为 192.168.1.123 从服务器ip为 192.168.1.124,首先保证两台服务器是畅通的状态可以相互ping通
一、MySQL用户授权
登录mysql的test数据库 mysql -uroot -p123456 test 如果我们要做主从复制 那么 我们就需要在主服务器上给从服务器授权,下面我们在主服务器上给从服务器授权一个用户,让从服务器能用此用户来访问我们的主服务器的数据库。 授权用户 grant all on *.* to user1@192.168.1.124 identified by "123456";【授权服务器地址为192.168.1.123,用户名为user1密码为123456的用户能够访问主服务器】 grant all on *.* to user1 identified by "123456";【给全部主机授权】 我们查看一下主服务器的用户 select user,host,password from mysql.user; 发现用户表中 多了一个user1的用户 那么主机地址为192.168.1.123 那么我们测试一下 我们在从服务器上用user1看能不能登录主服务器 mysql -uuser1 -p123456 -h192.168.1.123 测试发现成功!
二、 bin-log日志
首先我们要开启mysql的binlog日志 编辑/etc/my.cnf文件 在[mysqld]中加入下列代码 log-slow-queries = mysql-slow.log log-error = mysql.err log = mysql.log log-bin = mysql-bin #binlog日志的文件是存放在data目录中所以 要在此设置一下datadir这个属性 datadir = /usr/local/mysql/data #(如果找不到相应的bin-log日志的文件,那么去根目录戏/data/mysql/文件下找一下,或许是设置没有生效的原因) # 再找不到用find命令查找,find / -name 'mysql-bin.000*' -type f -print 登录mysql mysql -uroot -p123 test; 用到的代码指令: flush logs; 【生成一个最新的bin-log日志】 show master status; 【查看最后一个bin-log日志】 reset master; 【清空所有bin-log日志】 /usr/local/mysql/bin/mysqlbinlog mysql-bin.000001【查看bin-log日志 前提是你当前所在目录为/usr/local/mysql/data】 /usr/local/mysql/bin/mysqlbinlog mysql-bin.000001 | mysql -uroot -p123 test【把mysql-bin.000001的日志的记录恢复到test数据库】 /usr/local/mysql/mysqlbinlog --start-position="50" --stop-position="100" mysql-bin.000001 | mysql -uroot -p123 test【把mysql-bin.000001的50-100行的记录恢复到test数据库,除此之外还可以有--stop-date=""】 mysqldump -uroot -p123 test -l -F > /tmp/test.sql【备份test数据库到test.sql文件里 -l 代表读锁 -F代表flush logs】 mysql -uroot -p123 test -v -f < /tmp/test.sql【从test.sql恢复数据记录-v 代表查看导入信息 -f代表忽略错误】
浙公网安备 33010602011771号