在mysql管理过程中,偶尔会有一些PC服务器被关闭或重启。这时候我需要在主机启动后启动MySQL服务。总的来说,这项工作很简单。但是,当面对数百台甚至更多的MySQL主机时,这种“偶尔”可能会有很多,这种“偶尔”会发生在半夜或者凌晨,如果每次都是手动操作的话,那就非常繁琐了。更何况,一大早就打断梦,不值得。
要用startup自动启动mysqld,我们需要解决以下问题:
1.Linux boot自动启动脚本在哪里?
一般来说,用作服务器的Linux通常以“多用户模式和网络”级别启动,在这种情况下,Linux将在启动时运行/etc/rc.d/rc3.d/下的所有脚本。例如,我们将在“/etc/rc.d/rc3.d/S90crond”目录中看到该脚本,这意味着S90crond脚本将在机器启动时运行。
2.Linux如何运行这些脚本?
现在您知道了自动启动脚本的位置,一切都很容易。我们只需要放开一个启动MySQL的脚本。下面是一个简单的启动脚本v0.1 mysqldauto。
$vi mysqldauto
#!/bin/sh
#版本:0.1 orczhou@gmail.com
/opt/MySQL/bin/mysqld _ safe-user = MySQL & amp;#这需要修改到您的mysqld_safe目录
$chmod +x mysqldauto
$mv mysqldauto /etc/rc.d/init.d/
$ ln-s/etc/RC . d/init . d/mysqldauto/etc/RC . d/rc3 . d/s99 mysqld
这样我们把创建好的mysqldauto脚本放在/etc/rc.d/rc3.d/(注意这里用的是link方法),mysqld就可以自动启动了。
有两个问题需要解释:
* * * * *为什么不在/etc/rc.d/rc3.d/目录下创建一个文件,而是创建一个软连接呢?这是不必要的。但它有很多优点(后面会解释),但至少看起来会更专业。
* * * * *为什么要用S99mysqld作为文件名?这是规则。如果rc3.d下的脚本以字母S开头,Linux在执行时会给它传递一个start参数(如果以字母K开头,会传递stop参数);s后面跟一个数字,表示这个脚本的启动顺序。如果目录rc3.d中有S98*,那么它会在S99之前运行。(看到这里,你可以猜到为什么我们早先创建了软连接。)
好了,从此你的mysqld可以用Linux boot自动启动了。
3.如何变得更专业?
以上已经可以解决问题了,但是文笔有些“山寨”我们来看看怎么改造吧。
* * * * *转换1:处理参数开始。由于前面提到的以字母S开头的脚本将自动传递一个参数start,k将传递一个stop。然后,我将进行以下更改:
$vi mysqldauto
#!/bin/sh
#版本:0.2 orczhou@gmail.com
Mysql =/opt/mysql #这里需要修改为您的Mysql安装目录
if[$ #-ge 1];然后
mysqldProc = ` PS-ef | grep-E & quot;mysqld。+安全& quotgrep-v & quot;grep & quot|wc -l '
如果[$ 1 = & quot;停止& quot] ;然后
if[$ mysqldProc-eq1];然后
$ MySQL home/bin/MySQL admin-u root关机
船方不负担装货费用
elif[$ 1 = & quot;开始& quot];然后
if[$ mysqldProc-eq 0];然后
MySQL home/bin/mysqld _ safe-user = MySQL & amp;
船方不负担装货费用
船方不负担装货费用
船方不负担装货费用
经过这次修改,我们的脚本需要接收两个参数start stop。如果您希望mysqld在关闭主机时自动关闭,那么stop参数可以起作用:
$ ln-s/etc/RC . d/init . d/mysqldauto/etc/RC . d/rc0 . d/k 20 mysqld
这里显示了软连接优点,启动和关闭只需要一个脚本。
* * * * *转型二:当你面对几十台或者几百台主机的时候,MySQL的启动参数可能不一样。比如备份库启动时可能需要mysqld _ safe & ndashuser = mysql & ndashread _ olny = 1 & amp,这种情况?这里有一个解决方案。
在主机上运行脚本,检测当前mysqld的启动参数,然后写入指定文件。最后,在您的启动脚本中,读取该文件中的启动参数来启动mysqld。它起作用了。
关键词:mysql,Linux
优侠库网站每天提供最新最热门的安卓手机软件、游戏下载、分享热门手游资讯攻略教程、手机软件教程步骤,专注安卓手机游戏软件下载。本文链接:http://www.123down.cn/gonglue/227219.html