百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>数据库> service下令治理mysql启动和休止的办法介绍
分享文章到:

service下令治理mysql启动和休止的办法介绍

发布时间:08/01 来源:未知 浏览: 关键词:
?本篇文章给大家带来的内容是对于service下令治理mysql启动和休止的办法介绍,有一定的参照 价值,有需要的伴侣可以参照 一下,但愿对你有所帮忙。 本篇文章给大家带来的内容是对于service下令治理mysql启动和休止的办法介绍,有一定的参照 价值,有需要的伴侣可以参照 一下,但愿对你有所帮忙。

安装完成mysql之后,每次启动和休止都很费事,有时候记不住去网上搜一下,瞧见大家都用service来进行办事的治理,试了一下,公然好用。举荐大家也要这么用。

启动和休止mysql办事

# 启动
/usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/tmp/mysql.sock
# 休止
kill `cat /usr/local/mysql/var/mysqld.pid`

这样启动和休止需要记住mysql的途径和pid的保留位置,因而比拼费事。

service 系统办事治理

service下令用于治理系统办事,比方启动(start),休止(stop),重新启动(restart),查看状态(status)等。service下令自身就是一个shell足本,用于利便的调取该足原来完成任务,它在/etc/init.d/名目下查寻指定的办事足本。

相干的下令还有:

chkconfig:用于查看、设定办事的运转级别

ntsysv:用于设定办事的自启动

service运转指定办事(称为System V初始足本),只保存LANG和TERM两个环境变量,并设定目前途径为/。要是一个办事足本想要由service进行治理,至少需要支撑start和stop下令,并将足本保留在/etc/init.d/名目下。

service的运用方式

## 下令格局
Usage: service < option > | --status-all | [ service_name [ command | --full-restart ] ]

# 查看指定办事的下令行运用帮忙
service 
## mysqld 举例
$ service mysqld
Usage: mysqld  {start|stop|restart|reload|force-reload|status}  [ MySQL server options ]

# 启动、休止、重新启动指定办事
service  start|stop|restart
## mysqld举例restart,即先施行stop再施行start下令
$ service mysqld restart
Shutting down MySQL..                                      [  OK  ]
Starting MySQL.                                            [  OK  ]

# 显示指定办事的状态
$ service mysqld status
MySQL running (27390)                                      [  OK  ]

# 显示所有办事的状态
service --status-all

# 查看系统办事列表,以及每个办事的运转级别
chkconfig --list

# 设定指定办事开机时可否主动启动
chkconfig  on|off

# 以全屏幕文本界面设定办事开机时可否主动启动
# 必需以root启动,空格切换状态,tab切换按钮,高低鼠标挪移光标
ntsysv

除了用mysqld示例外,我们修改了主机名、IP地址等信息时,也要时常重新启动网络生效,此时可以调取:

service network status|restart

用service治理mysqld办事

我们已经理解了根基的见识,此刻就可以开端革新了,第一要在你的安装名目里寻到mysql.server文件。

$ locate mysql.server
/usr/local/mysql/support-files/mysql.server

这个文件在安装时初始化,其实也就是一个足本文件,支撑输入不一样的参数施行不一样的功能,我们可以查看它的start函数:

# 依据输入的下令施行不一样的足本,第一推断可否为start
case "$mode" in
  'start')
    # Start daemon

    # Safeguard (relative paths, core dumps..)
    cd $basedir

    echo $echo_n "Starting MySQL"
    # 查看该bin/mysqld_safe下令可否存在,要是不存在,就直接报错:寻不到
    if test -x $bindir/mysqld_safe
    then
      # Give extra arguments to mysqld with the my.cnf file. This script
      # may be overwritten at next upgrade.
      # 直接施行mysqld_safe下令,并传入参数,然后新建pid文件
      $bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null &
      wait_for_pid created "$!" "$mysqld_pid_file_path"; return_value=$?

      # Make lock for RedHat / SuSE
      if test -w "$lockdir"
      then
        touch "$lock_file_path"
      fi

      exit $return_value
    else
      log_failure_msg "Couldn't find MySQL server ($bindir/mysqld_safe)"
    fi
    ;;

  'stop')

然后将它复制到/tmp/init.d/名目下:

cp /usr/local/mysql/support-files/mysql.server /tmp/init.d/mysqld

此时,就可以直接调取service来进行启动了:

service mysqld start

碰到的一些题目

上面的理论很简略,但在启动的历程中还是碰到了一些题目,解决题目最简略的办法就是Google+查看日志文件,这两个办法可以非常快的速度定位并解决。

配置文件被忽略

直接看启动时的报错信息:

$ service mysqld start
Warning: World-writable config file '/etc/my.cnf' is ignored
Starting MySQL.Warning: World-writable config file '/etc/my.cnf' is ignored

直接看报错缘由,提醒的是全局可写的配置文件被忽略。这个差错是指该配置文件可以被所实用户修改,因而有被歹意篡改的可能,因而不会引入这个文件的配置,忽略。

解决方案就是将该文件改为会员和会员组可读写,其他会员只读不成写:

chmod 664 /etc/my.cnf

PID文件没法新建

直接看报错信息:

$ service mysqld start
Starting MySQL.The server quit without updating PID file (/usr/var/mysql/var/mysqld.pid).

报错缘由显示,启动MySQL时不测退出,由于没有更新PID文件。

这个时候,可能有些人看不太懂,不妨事,我们直接看差错日志:

2019-03-21 22:29:45 32896 [ERROR] /usr/local/mysql/bin/mysqld: Can't create/write to file '/usr/var/mysql/var/mysqld.pid' (Errcode: 2 - No such file or directory)
2019-03-21 22:29:45 32896 [ERROR] Can't start server: can't create PID file: No such file or directory

这个日志就很分明的写明了没法新建这个mysqld.pid文件,要末是权限题目,要末是途径不存在的题目,背面看发明是途径写错了,更改为准确的途径即可。

差错日志途径的设定:

$ vim my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
pid-file = /usr/var/mysql/var/mysqld.pid
log-error = /user/local/mysql/log/mysql.err

log指令被废弃

解决了上面的题目,我们继续施行,仍然发明一样的报错信息,但是日志文件却不一样了:

$ service mysqld start
Starting MySQL.The server quit without updating PID file (/usr/var/mysql/var/mysqld.pid).

# 日志文件
2019-03-21 22:37:33 0 [ERROR] /usr/local/mysql/bin/mysqld: ambiguous option '--log=/usr/local/mysql/log/mysql.log' (log-bin, log_slave_updates)
2019-03-21 22:37:33 0 [ERROR] Aborting

发明日志报错信息提醒:依稀的选项--log,这个不太明确,Google一下就能看到缘由:--log指令已经被废弃很久了,此刻运用--general-log来取代。修改my.cnf配置文件即可:

$ vim my.cnf
[mysqld]
general-log = /user/local/mysql/log/mysql.log

启动成功

解决了上面这些题目,终于可以成功启动了,这个时候我们可以利便的对mysqld办事进行启停以及reload了:

$ service mysqld start
Starting MySQL.                                            [  OK  ]

总结

Service办事治理工具,可以帮忙我们迅速的启停利用程序。在Mysql启动的历程中,把握日志文件的查看和Google的搜寻,对我们来说是最大的助力。

本篇文章到这里就已经全部完毕了,更多其他出色内容可以关注百分百源码网的MySQL教程视频栏目!

以上就是service下令治理mysql启动和休止的办法介绍的细致内容,更多请关注 百分百源码网 其它相干文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有151人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板