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

相关推荐
WuYiCheng6666 分钟前
Xshell实战:远程连接VMware CentOS7虚拟机与高效运维指南——从零配置到自动化操作,解锁Xshell的核心价值
运维·自动化
昭阳~13 分钟前
MySQL故障排查与生产环境优化
数据库·mysql·oracle
WuYiCheng66618 分钟前
CentOS高手之路:从进阶实战到企业级优化
linux·运维·centos
猴子请来的逗比48919 分钟前
mysql的安装方式
linux·数据库·学习·mysql
向上的车轮21 分钟前
Nginx基础知识
运维·nginx
湖北春晖信息28 分钟前
工业自动化实践:机器人上料系统如何优化生产流程?
运维·机器人·自动化
非自律懒癌患者1 小时前
ubuntu 20.04 ping baidu.coom可以通,ping www.baidu.com不通 【DNS出现问题】解决方案
linux·tcp/ip·ubuntu
Xam_d_LM1 小时前
【Linux】如何清除 Ubuntu 留下的 EFI 分区,Windows 磁盘管理器右键删除卷是灰色
linux·运维·windows·ubuntu·重装系统·磁盘管理器
自由鬼1 小时前
WebSphere Application Server(WAS)8.5.5教程第五讲
运维·服务器·程序人生·中间件·was·ibm·websphere
黄暄1 小时前
Linux项目部署全攻略:从环境搭建到前后端部署实战
java·linux·运维·服务器·前端·后端·持续部署