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

相关推荐
2301_777998344 小时前
Linux信号机制
linux
一叶龙洲7 小时前
win11与Ubuntu之间同步配置、插件
linux·运维·ubuntu
CHANG_THE_WORLD7 小时前
12.总结:深入理解 Linux I/O 多路复用:select、poll、epoll 全解析
linux·运维·服务器
风曦Kisaki8 小时前
# Linux笔记:操作系统优化与资源管理
linux·运维·服务器·笔记
Mr.HeBoYan9 小时前
一次持续三天才出现的丢包故障——深入解析 DPDK Memory Ordering、rte_ring 与 CPU Memory Barrier (下)
linux·网络·算法·架构·dpdk
关关长语10 小时前
Wsl解决MySQL容器跨域权限问题
mysql·docker·容器
zhangrelay10 小时前
笔记本轻量高品质延寿工具完整分系统清单
运维·笔记·学习
初願致夕霞10 小时前
C++懒汉单例设计详解
服务器·开发语言·c++
这个DBA有点耶10 小时前
索引碎片与统计信息维护:执行计划突然变差的隐形杀手
mysql·程序员·架构
Discipline~Hai11 小时前
ARM01-ARM体系架构
linux·c语言·arm开发·架构