暂无图片
如何利用/etc/init.d/mysql1和mariadb不同实例服务名称配置自启动
我来答
分享
手机用户1559
2023-12-20
如何利用/etc/init.d/mysql1和mariadb不同实例服务名称配置自启动

问题,想利用/etc/init.d/服务 配置两个mysql和mariadb实例随开机自动启动,及服务是如何调用的

环境:centos7,安装有mysql5和mariadb10两个实例

         分别把mysql的mysql.server 拷贝到/etc/init.d/aaa

                   mariadb的mysql.server 拷贝到/etc/init.d/bbb

         手工启动的 对应配置文件 mysql用的/etc/my.cnf ,mariadb用的是/etc/mysql/my.cnf

目前,只能有一个生效自动启动,而且没搞明白 /etc/init.d/服务 启动是如何调用的 basedir、datadir(虽然服务文件内容有这两个参数,但测试的结果是和这两个参数没多大关系)和配置文件的

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
yBmZlQzJ

首先,你需要将两个MySQL和MariaDB实例的配置文件分别修改为以下内容:

对于MySQL 5实例:

        

复制代码

[mysqld] basedir=/usr/local/mysql datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock pid-file=/var/run/mysqld/mysqld.pid port=3306 user=mysql log_error=/var/log/mysql/error.log log_output=/var/log/mysql/output.log

复制

对于MariaDB 10实例:

        

复制代码

[mariadb] basedir=/usr datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock pid-file=/var/run/mariadb/mariadb.pid port=3306 user=mysql log_error=/var/log/mysql/error.log log_output=/var/log/mysql/output.log

复制

然后,将这两个配置文件分别拷贝到/etc/init.d/aaa/etc/init.d/bbb

接下来,你需要编辑这两个服务文件,添加启动命令。在/etc/init.d/aaa中添加以下内容:

        

复制代码

#!/bin/sh ### BEGIN INIT INFO # Provides: aaa # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start daemon at boot time # Description: Enable service provided by daemon. ### END INIT INFO PATH=/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/mysql/bin/mysqld_safe NAME=mysql DESC=mysqld test -x "$DAEMON" || exit 0 case "$1" in start) echo -n "Starting $DESC: " $DAEMON --defaults-file=/etc/my.cnf &> /dev/null if [ $? -eq 0 ]; then echo "OK" else echo "FAILED" fi ;; stop) echo -n "Stopping $DESC: " killall -q $NAME if [ $? -eq 0 ]; then echo "OK" else echo "FAILED" fi ;; *) echo "Usage: $0 {start|stop}" exit 1 esac exit 0

复制

/etc/init.d/bbb中添加以下内容:

        

复制代码

#!/bin/sh ### BEGIN INIT INFO # Provides: bbb # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start daemon at boot time # Description: Enable service provided by daemon. ### END INIT INFO PATH=/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/bin/mysqld_safe NAME=mariadb DESC=mariadb test -x "$DAEMON" || exit 0 case "$1" in start) echo -n "Starting $DESC: " $DAEMON --defaults-file=/etc/mysql/my.cnf &> /dev/null if [ $? -eq 0 ]; then echo "OK" else echo "FAILED" fi ;; stop) echo -n "Stopping $DESC: " killall -q $NAME if [ $? -eq 0 ]; then echo "OK" else echo "FAILED" fi ;; *) echo "Usage: $0 {start|stop}" exit 1 esac exit 0

复制

最后,给这两个服务文件添加可执行权限:

        

bash复制代码

chmod +x /etc/init.d/aaa /etc/init.d/bbb

复制

现在,你可以使用以下命令来启动和停止这两个服务:

        

bash复制代码

sudo /etc/init.d/aaa start sudo /etc/init.d/aaa stop sudo /etc/init.d/bbb start sudo /etc/init.d/bbb stop

注意:端口不能冲突,否则只能启动一个。
复制
暂无图片 评论
暂无图片 有用 3
打赏 0
暂无图片
手机用户1559
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
mysql和mariadb这两个配置是一样的 ?
复制
暂无图片 评论
暂无图片 有用 4
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
MySQL 零外键关联是什么?
回答 1
MySQL零外键关联是指在MySQL中,不使用外键约束,而是通过其他方式实现表之间的关联。
MySQL Ver 8.0.27 对centos版本有什么要求吗?
回答 2
已采纳
centos6,7,8都可以
各位大神,我这里有两个sql查询结果一样,区别就是添加了一层rownum别名,就快了百倍,哪位能解释下原理啊?不太明白
回答 2
是不一样的,加上rownum,直接使用filter,不会查全表;你不加的话,realnum1会先查全表,取出一行;你看看执行计划,应该是不一样的。
Mysql建不了用户,报错1819,怎么解决?
回答 3
5.7setglobalvalidatepasswordpolicy0;setglobalvalidatepasswordlength0;setglobalvalidatepasswordnumber
mysql有几种安装方式?
回答 4
已采纳
官方二进制发行版操作系统软件包管理器源代码编译安装MySQL提供的安装程序
请教一下各位:用ogg把表从oracle同步到mysql,如果在初始化完成之后,表数据就发生变化了,而此时用于捕获增量数据的ext进程还没有启动,那这部分变化数据岂不是没抓取到?……
回答 1
已采纳
都是先配置好抽取进程再初始化吧?
mysql自查询中有主键使用in和主键使用=的区别
回答 3
外表和子查询的表都是t所以我们从语句中无法看出是关联子查询还是非关联子查询
MySQL index 占用空间很小是为什么?mysql的索引结构是什么样的?
回答 1
聚集索引有整行数据而二级索引只有索引列和主键列比如你有一张表有50个字段建立了一个单字段的二级索引那你这个二级索引就只有两个字段2个字段与50字段差距当然很大。事实是表中还可能在大字段。比例就更大了。
mysql 如何匹配多个 like 条件?
回答 4
严谨的SQL写法来了withcteas(select1asid,&x27;a,b,c&x27;astagunionallselect2asid,&x27;a,c,d&x27;astagunionall
MySQL里面的死锁信息 除了show engine innodb status获得外,有表保存的吗?
回答 1
已采纳
innodbprintalldeadlocks开始这个参数可以从errorlog中查看所有死锁信息