DRBD+Heartbeat+Mysql:配置mysql的高可用
##在dbm138(secondary)端执行# drbdadmprimary r0 #把138切换为primary
# cat /proc/drbd | grep ro
version: 8.3.16 (api:88/proto:86-97)
0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
# mount /dev/drbd0 /data/ #挂载DRBD设备
# df -h
Filesystem SizeUsed Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
19G3.4G 14G20% /
tmpfs 58M 0 58M 0% /dev/shm
/dev/sda1 477M 43M409M10% /boot
/dev/drbd0 8.8G2.1G6.3G25% /data
# cd /data/mysql/data/ #查看mysql数据
# ll
total 2109468
-rw-rw---- 1 mysql mysql 56 Jul2 12:46 auto.cnf
-rw-rw---- 1 mysql mysql 12582912 Jul2 13:02 ibdata1
-rw-rw---- 1 mysql mysql 1073741824 Jul2 13:02 ib_logfile0
-rw-rw---- 1 mysql mysql 1073741824 Jul2 12:46 ib_logfile1
drwx------ 2 mysql mysql 4096 Jul2 12:00 mysql
drwx------ 2 mysql mysql 4096 Jul2 12:00 performance_schema
-rw-rw---- 1 mysql mysql 185 Jul2 12:46 slow.log
drwx------ 2 mysql mysql 4096 Jul2 12:00 test
# cd /data/mysql/binlog/ #查看二进制文件
# ll
total 8
-rw-rw---- 1 mysql mysql 285 Jul2 13:02 mysql-binlog.000001
-rw-rw---- 1 mysql mysql39 Jul2 12:46 mysql-binlog.index
# mv /usr/local/mysql/my.cnf /usr/local/mysql/my.cnf.old
# vi /usr/local/mysql/my.cnf #修改配置文件
basedir = /usr/local/mysql#安装路径
datadir = /data/mysql/data#数据目录
port = 3306
server-id = 1 #此值不要去修改,因为主备mysql同一时刻只有一个被启动
pid-file = /data/mysql/data/mysql.pid#进程文件
socket = /var/lib/mysql/mysql.sock
default_storage_engine = InnoDB
log-bin = /data/mysql/binlog/mysql-binlog#二进制文件
expire_logs_days = 14
max_binlog_size = 5G
binlog_cache_size = 10M
max_binlog_cache_size = 20M
slow_query_log
long_query_time = 2
slow_query_log_file = /data/mysql/data/slow.log#slow日志文件
open_files_limit = 65535
innodb = FORCE
innodb_buffer_pool_size = 100M #注意这个参数
innodb_log_file_size = 1G
query_cache_size = 0
thread_cache_size = 64
table_definition_cache = 512
table_open_cache = 512
max_connections = 200
sort_buffer_size = 10M
max_allowed_packet = 6M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
#socket = /var/lib/mysql/mysql.sock
##注意:
##主备节点要保证配置文件my.cnf两边一模一样,避免出现问题
# cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld #拷贝启动脚本
##注意:
##千万不要,千万不要设置mysql开机自动启动,因为mysql服务的启动由heartbeat统一管理
# /etc/init.d/mysqld start #启动mysql服务
Starting MySQL.................................... SUCCESS!
# ps -ef | grep mysql
root 16284 10 12:46 pts/1 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql/data --pid-file=/data/mysql/data/mysql.pid
mysql 16783 162846 12:46 pts/1 00:00:03 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mysqld.log --open-files-limit=65535 --pid-file=/data/mysql/data/mysql.pid --socket=/var/lib/mysql/mysql.sock --port=3306
root 1687812860 12:47 pts/1 00:00:00 grep mysql
# cd /data/mysql/binlog/ #查看这次的二进制文件
# ll #接着dbm137又重新生成一个.000002,正常
total 12
-rw-rw---- 1 mysql mysql 285 Jul2 13:02 mysql-binlog.000001
-rw-rw---- 1 mysql mysql 120 Jul2 13:28 mysql-binlog.000002
-rw-rw---- 1 mysql mysql78 Jul2 13:28 mysql-binlog.index
# vi /etc/profile #修改PATH路径
##在最后添加:
export PATH=$PATH:/usr/local/mysql/bin
# source /etc/profile #立即生效
页:
[1]