Linux Mysql tar包部署之调整mysql.server
文章目录
背景
- 经常在部署MySQL的时候没有root账号,只能用普通账号部署,需要修改mysql.server来方便启停。
- 在某些安装的系统上,/etc/my.cnf会默认生成一个,导致MySQL启动的时候会去读/etc/my.cnf。
- 服务器上部署多个MySQL的时候,可能会有my.cnf的冲突。
基于上面三个原因,结合网上的文章,大概总结了下。
修改方法
- 版本
应该适用MySQL目前的所有版本,mysql.server实质是一个shell。
- 修改内容
路径: support-files/mysql.server
# 1、修改basedir和datadir路径
# 将两个路径改成实际的路径
basedir=
datadir=
# 2、修改extra_args,改成--defaults-file=$basedir/my.cnf
if test -r "$basedir/my.cnf"
then
# extra_args="-e $basedir/my.cnf"
extra_args="--defaults-file=$basedir/my.cnf"
fi
# 3、修改mysqld_safe启动默认配置文件,加入--defaults-file="$basedir/my.cnf"
# $bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null &
$bindir/mysqld_safe --defaults-file="$basedir/my.cnf" --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null &
启动|停止|重启
在mysql的配置文件等无误后,进去MySQL的目录执行下面的命令进行启动|停止|重启
- 启动
support-files/mysql.server start
- 停止
support-files/mysql.server stop
- 重启
support-files/mysql.server restart
参考
从启动脚本分析mysql读取my.cnf配置的顺序: https://www.jianshu.com/p/bee4a55dc574