mysql多启动

binary安装:

1、redhat rpm

2、mysql rpm

3、mysql glibc

source安装:

1、5.1mysql(./configure && make && make install)

2、5.5mysql(cmake && make && make install)

单启动:

1、安装

bash 复制代码
tar xf xxx.tar.gz
cd xxx
./configure --prefix=xxx --enable --disables --with
make && make install

2、初始化数据库:

bash 复制代码
useradd -s /sbin/nologin mysql
cd $basedir
chown -R mysql.mysql .
./bin/mysql_install_db --user --datadir=/xxx or scripts/mysql_install_db
chown -R root .
chown -R mysql var|data
./bin/mysqld_safe --user=mysql --datadir=./var --basedir=$prefix --defaults-file=/xx/my.cnf

mysql服务启动时需要哪些文件:

程序

/opt/mysql/bin/mysqld_safe-->mysqld

配置文件

/etc/my.cnf

数据文件

/basedir/data|var

network socket:

0.0.0.0:3306

file socket:

/tmp/mysql.sock 或 /var/lib/mysql/mysql.sock 或$prefix/mysql.sock

pid-file:

mysqld pid

mysqlrpm /usr/sbin/mysqld /mysql/data1 /mysql/data1/my.cnf 3306 /mysql/data1/mysql.sock /mysql/data1/mysql.pid

mysqlglbic /opt/mysql /mysql/data2 /mysql/data2/my.cnf 3307 /mysql/data2/mysql.sock /mysql/data2/mysql.pid

mysql5.5 /opt/mysql5.5 /mysql/data3 /mysql/data3/my.cnf 3308 /mysql/data3/mysql.sock /mysql/data3/mysql.pid

多启动要考虑的因素:

1、数据目录

2、初始化要使用的脚本

3、配置文件

4、启动的脚本(mysqld_safe)

1、初始化配置:

bash 复制代码
mkdir /mysql/data{1,2,3} -p
chown mysql.mysql /mysql/data{1,2,3}
chmod 700 /mysql/data{1,2,3}
rm -rf /etc/my.cnf
mysql_install_db --basedir=/usr --datadir=/mysql/data1 --user=mysql
/opt/mysql/scripts/mysql_install_db --basedir=/opt/mysql --datadir=/mysql/data2 --user=mysql
/opt/mysql5.5/scripts/mysql_install_db --basedir=/opt/mysql5.5 --datadir=/mysql/data3 --user=mysql

书写配置文件:

bash 复制代码
vim /mysql/data1/my.cnf

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

[mysqld]
user=mysql
socket=/mysql/data1/mysql.sock
port=3306
datadir=/mysql/data1
basedir=/usr
pid-file=/mysql/data1/mysql.pid
bash 复制代码
cp /mysql/data1/my.cnf /mysql/data2/my.cnf
cp /mysql/data1/my.cnf /mysql/data3/my.cnf
sed -i 's/data1/data2/g' /mysql/data2/my.cnf
sed -i 's/data1/data3/g' /mysql/data3/my.cnf
sed -i 's/3306/3307/' /mysql/data2/my.cnf
sed -i 's/3306/3308/' /mysql/data3/my.cnf

sed -i 's#/usr#/opt/mysql#' /mysql/data2/my.cnf
sed -i 's#/usr#/opt/mysql5.5#' /mysql/data3/my.cnf

启动三个mysql:

bash 复制代码
/usr/bin/mysqld_safe --defaults-file=/mysql/data1/my.cnf &

cd /opt/mysql		--如果是glibc包,需要先进入basedir
/opt/mysql/bin/mysqld_safe --defaults-file=/mysql/data2/my.cnf &

/opt/mysql5.5/bin/mysqld_safe --defaults-file=/mysql/data3/my.cnf &

登录不同的mysqld

bash 复制代码
netstat -anlp |grep mysql
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      7043/mysqld         
tcp        0      0 0.0.0.0:3307                0.0.0.0:*                   LISTEN      7173/mysqld         
tcp        0      0 0.0.0.0:3308                0.0.0.0:*                   LISTEN      7317/mysqld         
unix  2      [ ACC ]     STREAM     LISTENING     38339  7317/mysqld         /mysql/data3/mysql.sock
unix  2      [ ACC ]     STREAM     LISTENING     37721  7043/mysqld         /mysql/data1/mysql.sock
unix  2      [ ACC ]     STREAM     LISTENING     38057  7173/mysqld         /mysql/data2/mysql.sock

1)登录第一个mysql(3306)

bash 复制代码
/opt/mysql5.5/bin/mysql -S /mysql/data1/mysql.sock
/opt/mysql5.5/bin/mysql -h`hostname` -P3306
/opt/mysql5.5/bin/mysql --defaults-file=/mysql/data1/my.cnf

2)第二个

bash 复制代码
/opt/mysql5.5/bin/mysql -S /mysql/data2/mysql.sock
/opt/mysql5.5/bin/mysql -h`hostname` -P3307
/opt/mysql5.5/bin/mysql --defaults-file=/mysql/data2/my.cnf

3)第三个

bash 复制代码
/opt/mysql5.5/bin/mysql -S /mysql/data3/mysql.sock
/opt/mysql5.5/bin/mysql -h`hostname` -P3308
/opt/mysql5.5/bin/mysql --defaults-file=/mysql/data3/my.cnf

配置文件的加载顺序(后应用的会覆盖先应用的配置内容):

mysql/mysqld

1、/etc/my.cnf-->/etc/mysql/my.cnf-->basedir/my.cnf-->basedir/etc/my.cnf-->~/.my.cnf

相关推荐
zhixingheyi_tian10 分钟前
Linux 之 memory 碎片
linux
邂逅星河浪漫19 分钟前
【域名解析+反向代理】配置与实现(步骤)-SwitchHosts-Nginx
linux·nginx·反向代理·域名解析·switchhosts
计算机学姐23 分钟前
基于php的摄影网站系统
开发语言·vue.js·后端·mysql·php·phpstorm
梅尔文.古27 分钟前
RaspberryPi-如何启用看门狗
linux·运维·服务器
木子欢儿27 分钟前
Ubuntu 24 安装 fcitx5 + rime + 雾凇配置
linux·运维·服务器·ubuntu
sg_knight29 分钟前
Nuxt 4 生产环境部署指南 (Node.js + Nginx)
运维·nginx·node.js·nuxt·ssr
计算机学姐37 分钟前
基于php的旅游景点预约门票管理系统
开发语言·后端·mysql·php·phpstorm
Alice39 分钟前
linux scripts
java·linux·服务器
czlczl2002092542 分钟前
高并发下的 Token 存储策略: Redis 与 MySQL 的一致性
数据库·redis·mysql
企微自动化44 分钟前
自动化报表生成:将 RPA 采集的群聊数据自动整理为可视化周报
运维·自动化·rpa