mysql dba系统学习(3)mysql的启动停止
mysql的启动有很多方法,我们将来一一讨论一,mysqld
mysqld是mysql的服务
mysqld这种方式启动的时候会读取my.cnf文件中的和组group
(每一个组都有[]来分割)
一般的,我们通过这种方式手动的调用mysqld,如果不是出去调试的目的,我们一般都不这样做。
因为这种方式会使错误日志直接从终端输出,而不是记录在错误日志文件中,这样,如果mysql崩溃的话
我们也不知道原因。
连接方法
start
# /usr/local/mysql/libexec/mysqld--defaults-file=/etc/my.cnf --user=mysql
1306177:22:58 Event Scheduler: Loaded 0 events
1306177:22:58 /usr/local/mysql/libexec/mysqld: ready for connections.
Version: '5.1.70-log'socket: '/tmp/mysql.sock'port: 3306Source distribution
# ps aux|grep mysql
mysql 193270.01.3 1253046648 pts/0 Sl+07:22 0:00 /usr/local/mysql/libexec/mysqld --defaults-file=/etc/my.cnf --user=mysql
connnect
mysqld--defaults-file=/etc/my.cnf
mysqld-S /tmp/mysql.sock
二,mysqld_safe
mysqld_safe这种方式启动的时候会读取my.cnf文件中的,和组group,但是为了兼容,也会读取这个组
mysqld_safe是一个调用mysqld的shell脚本,它还设置了错误日志,它可以启动mysqld和monitor mysqld进程,这样,如果mysqld的进程异常终止,mysqld_safe会重启mysqld
# /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &
20571
# 130617 07:57:29 mysqld_safe Logging to '/usr/local/mysql/var/test4.wolf.org.err'.
130617 07:57:29 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/var
#
# ps aux|grep mysql
root 205711.00.2 1060121344 pts/0 S 07:57 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql
mysql 206801.01.3 1253086652 pts/0 Sl 07:57 0:00 /usr/local/mysql/libexec/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --user=mysql --log-error=/usr/local/mysql/var/test4.wolf.org.err --pid-file=/usr/local/mysql/var/test4.wolf.org.pid --socket=/tmp/mysql.sock --port=3306
报错:
mysqld_safe Logging to '/usr/local/mysql/data/Linux.err'.
mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
mysqld_safe mysqld from pid file /usr/local/mysql/data/Linux.pid ended
解决方法:初始化mysql
# /usr/local/mysql/bin/mysql_install_db--user=mysql
二,mysql.server
mysql.server是一个调用mysqld_safe的shell脚本
它的执行文件在$MYSQL_BASE/share/mysql/mysql.server 和 support-files/mysql.server
mysql.server的启动会读取和,为了兼容,也会读取组
# cp mysql-5.1.70/support-files/mysql.server /etc/init.d/mysql
# chmod u+x /etc/init.d/mysqld
# servicemysqld start
Starting MySQL SUCCESS!
# ps aux|grep mysql
root 205710.00.2 1060121344 pts/0 S 07:57 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql
mysql 206800.01.3 1253086652 pts/0 Sl 07:57 0:00 /usr/local/mysql/libexec/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --user=mysql --log-error=/usr/local/mysql/var/test4.wolf.org.err --pid-file=/usr/local/mysql/var/test4.wolf.org.pid --socket=/tmp/mysql.sock --port=3306
页:
[1]