您的位置:首页 > 运维架构 > Linux

SuSE Linux安装多MySQL实例

2015-07-01 14:33 821 查看
在一个Linux中安装多个MySQL是常见的需求,MySQL软件包中已经自带了一个mysqld_multi的脚本来满足这种需求,然而,FromDual所提供的MyEnv是一种更好更完善的解决方法。其中,一个明显的优势是MyEnv支持多个MySQL的BASEDIR,即多个MySQL软件版本。下面是笔者在实践中,在SuSE Linux安装多MySQL的实践操作,供各位参考。

操作系统准备

没有的话添加操作系统mysql用户

groupadd dba

useradd -g dba mysql

mkdir /home/mysql

chown -R mysql:dba /home/mysql

安装php相关软件包

SuSE Linux 11.2的话:php5-pcntl php5-mysql php5-posix

SuSE Linux 11.3的话:php53-pcntl php53-mysql php53-posix

修改/etc/php5/cli/php.ini,设置以下参数

variables_order = "EGPCS"

部署MySQL软件

软件准备

cd /app

tar xvf mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz

mv mysql-5.6.25-linux-glibc2.5-x86_64 mysql

chown -R mysql:dba mysql

创建MySQL实例

准备数据目录(文件系统以/data为例,子目录命令规则为my后添加端口号)

mkdir /data/my3306

chown -R mysql:dba /data/my3306

切换到mysql用户下

su - mysql

准备参数文件/data/my3306/my.cnf

[client]

socket=/data/my3306/mysql.sock

[mysqld]

socket=/data/my3306/mysql.sock

explicit_defaults_for_timestamp=TRUE

basedir=/app/mysql

datadir=/data/my3306

初始化

cd /app/mysql

/app/mysql/scripts/mysql_install_db --defaults-file=/data/my3306/my.cnf

继续添加创建其他MySQL实例。

安装myenv

创建目录和下载软件

mkdir /etc/myenv

chown -R mysql:dba /etc/myenv

su - mysql

tar xf myenv-1.2.0.tar

mv myenv-1.2.0 myenv

切换到root用户执行以下

cp /home/mysql/myenv/bin/myenv.server /etc/init.d/myenv

chkconfig --add myenv; chkconfig myenv on

切换回mysql执行以下命令,第一次选择t,第二次选择a添加之前那个MySQL实例(参考后续章节),第三次选择y

myenv/bin/installMyEnv

将MySQL添加到myenv

第一种方式,执行myenv/bin/installMyEnv,并根据指示添加

第二种方式,按以下模板手工添加到/etc/myenv/myenv.conf

[my3306]

 start                = yes

 stop                 = yes

 hideschema           = mysql,performance_schema,lost+found

 basedir              = /app/mysql

 datadir              = /data/my3306

 user                 = mysql

 port                 = 3306

 socket               = /data/my3306/mysql.sock

 my.cnf               = /data/my3306/my.cnf

 stage                = production

 angel                = yes

按照以上步骤完成其他MySQL实例的添加。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql myenv