常青树 发表于 2018-9-29 09:46:42

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]
查看完整版本: mysql dba系统学习(3)mysql的启动停止