3、初始化数据库
1)切换到MySQL用户,进入MySQL主目录
# su - mysql
# cd /opt/mysql/
2)初始化实例[mysqld1]和[mysqld2]
# scripts/mysql_install_db --basedir=/opt/mysql --user=mysql --datadir=/opt/mysql/data/
# scripts/mysql_install_db --basedir=/opt/mysql --user=mysql --datadir=/opt/mysql/data2/
3)回到root,创建mysqld_multi.server脚本
# exit
# mkdir -p /opt/mysql/init.d
# cp support-files/mysqld_multi.server /opt/mysql/init.d/
# vi /opt/mysql/init.d/mysqld_multi.server
#!/bin/sh
#
# A simple startup script for mysqld_multi by Tim Smith and Jani Tolonen.
# This script assumes that my.cnf file exists either in /etc/my.cnf or
# /root/.my.cnf and has groups [mysqld_multi] and [mysqldN]. See the
# mysqld_multi documentation for detailed instructions.
#
# This script can be used as /etc/init.d/mysql.server
#
# Comments to support chkconfig on RedHat Linux
# chkconfig: 2345 64 36
# description: A very fast and reliable SQL database engine.
#
# Version 1.0
#
basedir=/opt/mysql
bindir=/opt/mysql/bin
conf=/opt/mysql/etc/my.cnf
export PATH=$PATH:$bindir
if test -x $bindir/mysqld_multi
then
mysqld_multi="$bindir/mysqld_multi";
else
echo "Can't execute $bindir/mysqld_multi from dir $basedir";
exit;
fi
case "$1" in
'start' )
"$mysqld_multi" --defaults-extra-file=$conf start $2
;;
'stop' )
"$mysqld_multi" --defaults-extra-file=$conf stop $2
;;
'report' )
"$mysqld_multi" --defaults-extra-file=$conf report $2
;;
'restart' )
"$mysqld_multi" --defaults-extra-file=$conf stop $2
"$mysqld_multi" --defaults-extra-file=$conf start $2
;;
*)
echo "Usage: $0 {start|stop|report|restart}" >&2
;;
esac
4、整体备份MySQL
# cd /opt/
# tar czvf mysql_5.5.19_full.tar.gz mysql5519/
备份完成后,直接将mysql_5.5.19_full.tar.gz拿到其他服务器上,解压后便可以直接启用。
5、管理MySQL实例
1)同时启动实例 [mysqld1] 与 [mysqld2]:
# /opt/mysql/init.d/mysqld_multi.server start 1,2
2)查看两个MySQL实例是否都已经成功启动
# netstat -lntp | grep mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 28752/mysqld
tcp 0 0 0.0.0.0:3307 0.0.0.0:* LISTEN 28756/mysqld
同时关闭实例 [mysqld1] 与 [mysqld2]:
# /opt/mysql/init.d/mysqld_multi.server stop 1,2
仅启动/关闭实例[mysqld1]:
# /opt/mysql/init.d/mysqld_multi.server start 1
# /opt/mysql/init.d/mysqld_multi.server stop 1