您好,欢迎访问一九零五行业门户网

CentOS 5.5 安装 mysql-5.1.53-linux-x86_64 及主从复制集群配置

设置mysql的主从复制的主要用途:1 做备份机器,一旦主服务器崩溃,可以直接启用从服务器作为主服务器2 可以直接锁定从服务器的表
设置mysql的主从复制的主要用途:
1 做备份机器,一旦主服务器崩溃,可以直接启用从服务器作为主服务器
2 可以直接锁定从服务器的表只读,然后做备份数据,这样不会影响主服务器的服务
3 可以处理读写数据库的负载均衡
要点:
从服务器一般需要设置只读,否则容易产生错误导致同步失败
wget ://mysql.mirror.tw/
tar -c /usr/local -xzf mysql-5.1.53-linux-i686-glibc23.tar.gz
cd /usr/local
ln -s  mysql-5.1.53-linux-i686-glibc23 mysql
tar -c /usr/local -xzf  mysql-5.1.53-linux-x86_64-glibc23.tar.gz
cd /usr/local
ln -s mysql-5.1.53-linux-x86_64-glibc23 mysql
cd /usr/local/mysql
cp support-files/my-huge.cnf my.cnf
mv /etc/my.cnf ~/
mv /etc/rc.d/init.d/mysqld ~/
修改server-id = 1为服务器ip地址最后几位,或者其它数值:
vim  my.cnf
server-id = 8108
max_allowed_packet = 64m
max_connections=800
character-set-server=utf8
expire_logs_days = 60
binlog_format=mixed
innodb_log_files_in_group=2
default_table_type = innodb
innodb_data_home_dir = /opt/data/mysql/
innodb_data_file_path = ibdata1:2000m;ibdata2:2000m;ibdata3:20m:autoextend
innodb_log_group_home_dir = /opt/data/mysql/
# 4g ram
innodb_buffer_pool_size = 1g
innodb_log_file_size = 256m
innodb_log_buffer_size = 4m
innodb_flush_log_at_trx_commit=0
innodb_thread_concurrency=8
innodb_flush_method=o_direct
# perform
tmp_table_size = 512m
max_heap_table_size=128m
slow_query_log
#slow_query_log_file=mysql-slow.log
long_query_time=1
log-error=mysqld.log
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#————————————–
# 32g ram
max_allowed_packet = 64m
innodb_buffer_pool_size = 24g
#————————————-
/usr/sbin/groupadd -g 502 mysql
/usr/sbin/useradd -u 502 -g mysql mysql
mkdir -p /opt/data/mysql/
chown mysql.mysql /opt/data/mysql/
cd /usr/local/mysql/
scripts/mysql_install_db –user=mysql
chown -r root .
chown -r mysql data
chgrp -r mysql .
#chmod -r u+rw data
cd /opt/data/mysql/
chown mysql.mysql /opt/data/mysql/
cd /usr/local/mysql/
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
#/sbin/chkconfig –del mysqld
/sbin/chkconfig –add mysqld
/sbin/chkconfig –level 345 mysqld on
/sbin/chkconfig –list mysqld
echo /usr/local/mysql/lib >> /etc/ld.so.conf
cat /etc/ld.so.conf
ldconfig
/etc/rc.d/init.d/mysqld stop
/etc/rc.d/init.d/mysqld start
mkdir -p /var/lib/mysql/
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
#/usr/local/mysql/bin/mysqld_safe &
mkdir -p /var/run/mysqld/
chown mysql /var/run/mysqld/
#加入mysql到路径
echo pathmunge /usr/local/mysql/bin after > /etc/profile.d/mysql.sh
#执行一下,保证mysql在路径环境变量中
. /etc/profile
或者
vim /etc/profile
path=$path:/usr/local/mysql/bin
path=/usr/local/mysql/bin:$path
tail -50 /opt/data/mysql/*.err
slave上的配置
修改server-id = 1为服务器ip地址最后几位,,或者其它数值,必须保证唯一性:
vim  my.cnf
server-id = 8168
max_connections=600
character-set-server=utf8
binlog_format = row
default_table_type = innodb
relay-log-purge=1
#slave-skip-errors=1062,1053
skip-slave-start
replicate-ignore-db=mysql
innodb_data_home_dir = /opt/data/mysql/
innodb_data_file_path = ibdata1:2000m;ibdata2:2000m:autoextend
innodb_log_group_home_dir = /opt/data/mysql/
在master服务器上配置复制账号权限:
grant replication slave on *.* to 'replication'@'%' identified by 'slavepass';
flush privileges;
在slave服务器上配置master服务器信息:
change master to master_host='10.8.8.108', master_user='replication', master_password='slavepass';
start slave;
其它类似信息

推荐信息