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