Mariadb-10.2.25 多实例

时间:2022-05-13 04:10:07

Mariadb-10.2.25 多实例

定义目录

mkdir -p /mysql/{3306,3307,3308}/{bin,data,etc,log,pid,socket}

生成数据库文件

/app/mysql/scripts/mysql_install_db --datadir=/mysql/3306/data --user mysql
/app/mysql/scripts/mysql_install_db --datadir=/mysql/3307/data --user mysql
/app/mysql/scripts/mysql_install_db --datadir=/mysql/3308/data --user mysql

权限设置

chmod -R mysq.mysql /mysql

配置文件

cp mariadb-10.2.25/support-files/my-huge.cnf /mysql/3306/etc/my.cnf
vim /mysql/3306/etc/my.cnf

[mysqld]
datadir         = /mysql/3306/data
port            = 3306
socket          = /mysql/3306/socket/mysql.sock

[client]
port            = 3306
socket          = /mysql/3306/socket/mysql.sock

[mysqld_safe]
log-error=/mysql/3306/log/mariadb.log pid-file=/mysql/3306/pid/mariadb.pid cp /mysql/3306/etc/my.cnf /mysql/3307/etc/my.cnf cp /mysql/3306/etc/my.cnf /mysql/3308/etc/my.cnf sed -i [email protected]@[email protected]‘ /mysql/3307/etc/my.cnf sed -i [email protected]@[email protected]‘ /mysql/3308/etc/my.cnf

启动脚本

#!/bin/bash port=3306 mysql_user="root" mysql_pwd="centos" cmd_path="/app/mysql/bin" mysql_basedir="/mysql" mysql_sock="${mysql_basedir}/${port}/socket/mysql.sock" function_start_mysql() { if [ ! -e "$mysql_sock" ];then printf "Starting MySQL...n" ${cmd_path}/mysqld_safe --defaults-file=${mysql_basedir}/${port}/etc/my.cnf &> /dev/null & else printf "MySQL is running...n" exit fi } function_stop_mysql() { if [ ! -e "$mysql_sock" ];then printf "MySQL is stopped...n" exit else printf "Stoping MySQL...n" ${cmd_path}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S ${mysql_sock} shutdown fi } function_restart_mysql() { printf "Restarting MySQL...n" function_stop_mysql sleep 2 function_start_mysql } case $1 in start) function_start_mysql ;; stop) function_stop_mysql ;; restart) function_restart_mysql ;; *) printf "Usage: ${mysql_basedir}/${port}/bin/mysqld {start|stop|restart}n" esac 

分别存放在 /mysql/{3306,3307,3308}/bin/mysqld,对应端口,添加执行权限

启动

/mysql/3306/bin/mysqld start
/mysql/3307/bin/mysqld start
/mysql/3308/bin/mysqld start

修改密码

mysqladmin -S /mysql/3306/socket/mysql.sock password centos
mysqladmin -S /mysql/3307/socket/mysql.sock password centos
mysqladmin -S /mysql/3308/socket/mysql.sock password centos

停止服务

/mysql/3306/bin/mysqld stop /mysql/3307/bin/mysqld stop /mysql/3308/bin/mysqld stop

来源:http://www.1994july.club/