您当前位置:优侠库 > 资讯攻略 >
来源:未知
2022-03-13 19:51:26 浏览: 分类:资讯攻略

mysql随Linux开机自动启动

在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

攻略资讯
安卓软件
安卓游戏