配置多端口

1、首先要先把my.cnf配置文件复制一份,开几个端口要复制几份当然要重新命名.
cp /etc/my.cnf /etc/my3307.cnf
2、修改my3307.cnf文件把默认的3306端口改成 3307
[client]
port = 3307
socket = /tmp/mysql3307.sock
default-character-set=UTF
[mysqld]
port = 3307
socket = /tmp/mysql3307.sock
basedir=/usr/local/mysql
datadir=/data/mysql_data_3307
3、创建数据库指定存放数据的目录
mkdir /data/mysql_data_3307
4、初始化数据库
/usr/local/mysql/bin/mysql_install_db --datadir=/data/mysql_data_3307/
5、修改数据库存放数据的目录权限
[root@localhost data]# chown -R mysql mysql_data_3307/
6、启动数据库
[root@localhost data]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my3307.cnf --datadir=/data/mysql_data_3307 --user=mysql &

服务启动

/bin/sh /usr/local/mysql516-3303/bin/mysqld_safe --defaults-file=/usr/local/mysql516-3303/my.cnf --datadir=/data/mysql_data_3303/


/usr/local/mysql516-3303/bin/mysqld --defaults-file=/usr/local/mysql516-3303/my.cnf --basedir=/usr/local/mysql516-3303 --datadir=/data/mysql_data_3303/


服务停止

/usr/local/mysql516-3303/bin/mysqladmin -uroot -p123 -S /tmp/mysql3303.sock shutdown


另一种停止多实例的方法(经测试,此方法可行)

mysqld_multi --defaults-file=/etc/my.cnf stop 3307


当mysql不是正常路径安装时,启动服务的方法,要加上mysql的安装路径

/usr/local/mysql516-3308/bin/mysqld--defaults-file=/usr/local/mysql516-3308/my.cnf --basedir=/usr/local/mysql516-3308--datadir=/data/mysql_data_3308/--user=mysql &


与上面的方法不同,这里用的是mysqld而不是mysqld_safe,有待查询这两者的差别~~



启动默认服务,service mysqld stop无法使用

/etc/init.d/mysqld start

可用此方法。


进入数据库

./mysqldump -uroot -p123 -S /tmp/mysql3303.sock


小总结

关于当mysql不是默认安装在/usr/local/mysql时,数据库的创建及其启动命令

创建时需要带上安装的路径信息,basedir信息

gamedb:/data # /usr/local/mysql5157/scripts/mysql_install_db --basedir=/usr/local/mysql5157/  --datadir=/data/mysql_data3307/

启动时,需要在安装的目录下执行./bin/mysqld_safe

gamedb:/usr/local/mysql5157 # ./bin/mysqld_safe --defaults-file=/etc/my3307.cnf --basedir=/usr/local/mysql5157/ --datadir=/data/mysql_data_3307/ --user=mysql &



240的3307数据库启动关闭
/opt/mysql/bin/mysqladmin -uroot -p123456 shutdown
/opt/mysql/bin/mysqld --defaults-file=/opt/mysql/my.cnf --basedir=/opt/mysql --datadir=/data/mysql_data --user=mysql --socket=/tmp/mysql.sock --port=3307 &


215的3306数据库实例启动关闭
[root@linux-215 bin]# ./mysqld --defaults-file=/etc/my3306.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql_data/mysql_data_3306/ --user=mysql &
[root@linux-215 bin]# ./mysqladmin -uroot -p2153306 shutdown
[root@linux-215 bin]# ./mysql -uroot -p2153306


内网250的3308端口为215的3303从机
./mysqld --defaults-file=/etc/my3308.cnf --basedir=/usr/local/mysql5.5/ --datadir=/data/mysql_data_3308 --user=mysql &