mysql 4种启动方式
都是去调用mysqld文件
1. mysqld 启动
进入mysqld文件所在目录(/../libexec/mysqld)
./mysqld --defaults-file=./my.cnf --user=mysql
2. mysqld_safe 启动
进入mysqld_safe所在目录(../bin/mysqld_safe)
./bin/mysqld_safe --defaults-file=./my.cnf --user=mysql
如果mysqld进程异常中断的话mysqld_safe会重启mysqld进程
3. mysql.servre
进入mysql.server所在目录(../share/mysql/mysql.server)
./mysql.server start
把mysql.server文件拷贝到系统启动目录下可以加入系统程序启动
cp ./mysql.server /etc/rc.d/int.d/mysql
chkconfig --add mysql
直接用server mysql start
4. mysqld_multi
管理多个数据库
mysql_install_db初始化mysql数据库命令
新加一个mysql实例为例。例如服务器上已经安装了3306端口的mysql服务,需要再启一个3308端口的mysql服务。
假设mysql安装在/usr/local/mysql路径下,找一个磁盘空间剩余比较大的盘,如/data1,把3308端口的mysql的数据保存在/data1下
#mkdir /data1/mysql_3308
#mkdir /data1/mysql_3308/data
#chown -R mysql:mysql /data1/mysql_3308
复制一个mysql配置文件my.cnf到/data1/mysql_3308目录下
#vi /data1/mysql_3308/my.cnf
修改配置文件,将端口和相关目录的都改为新的设置,如下:
[mysqld_multi]
mysqld =/opt/mysql/bin/mysqld_safe //启动路径
mysqladmin =/opt/mysql/mysqladmin //负责打印状态
user = test //定义关闭用户
password = test //关闭mysql的用户密码,此用户要有mysql关闭的权限
[client]
character-set-server = utf8
port = 3308
socket = /tmp/mysql_3308.sock
[mysqld3308]
user = mysql
port = 3308
socket = /tmp/mysql_3308.sock
basedir = /usr/local/mysql
datadir = /data1/mysql_3308/data
log-error = /data1/mysql_3308/mysql_error.log
pid-file = /data1/mysql_3308/mysql.pid
......其他略
确保配置文件无误。
运行下面命令进行数据库的初始化:
#/usr/local/mysql/bin/mysql_install_db --defaults-file=/data1/mysql_3308/my.cnf --datadir=/data1/mysql_3308/data
启动3308端口的mysql服务
#/usr/local/mysql/bin/mysqld_safe --defaults-file=/data1/mysql_3309/my.cnf &
启动
./bin/mysqld_multi --defaults-file=./my.cnf start 3308
关闭
./bin/mysqld_multi --defaults-file=./my.cnf stop 3308