mysql一台高配多台_在一台服务器上安装MySQL多实例(详解)

apt-cache search ncurses

apt-get install libncurses5-dev

至此,接下来的make && make install 都没有出现错误。

二,配置多实例

这个过程折腾了好长的时间,其实主要还是各个配置文件的问题,如果权限,路径等一些基本的配置信息准确无误的话,应该是比较快的一个过程。

1、安装完成后,首先运行mysql看看是否可以正常使用数据库。

mysql>

2、配置访问用户和组

groupadd mysql #添加mysql用户组

useradd -g mysql mysql #创建mysql用户并把它放到mysql组下

chown -R mysql:mysql /usr/local/mysql #修改mysql文件属性

说明:这个地方有的时候我不好区分到底哪个是用户名,哪个是组名,于是我改成了别的名字,后来发现这样改掉之后在mysql的执行脚本里,用户默认是mysql,所以不建议在这里改用其他的用户和组的名称。

为了方便使用下面的多个mysql程序,可以先将mysql的程序路径加入到环境变量里:

#临时添加:export PATH=$PATH:/usr/local/mysql/bin  #注销登录就没有了

#永久添加:修改/root/.bashrc

在文件最末添加命令:

PATH=$PATH:/usr/local/mysql/bin

3、初始化数据目录,修改文件夹属性

#初始化数据目录

mysql_install_db --datadir=/usr/local/mysql/var/data1 --user=mysql

mysql_install_db --datadir=/usr/local/mysql/var/data2 --user=mysql

说明:

这个过程中如果出现了无法创建的错误,一般来讲是权限问题,参考下面的权限错误链接

#修改属性

chown -R mysql /usr/local/mysql/var/data1

chown -R mysql /usr/local/mysql/var/data2

4、多实例的启动脚本(不知道是不是必须)得从安装文件源码中复制

cp /usr/local/src/mysql-5.1.65/support-files/mysqld_multi.server /etc/init.d/mysqld_multi.server

#修改basedir和bindir为安装路径

basedir=/usr/local/mysql/var    #如果数据目录的路径跟默认的不一样就得在这里更改

bindir=/usr/local/mysql/bin    #程序路径

5、启动脚本准备好之后,就是多实例的配置文件,配置文件可以用参数自由指定,

查看mysqld_multi --example可以知道配置文件的格式。网上一大把,就不多说了。下面给出我完整的配置文件信息mysqld_muliti.cnf(内容很少很简单):

[mysqld_multi]

mysqld     = /usr/local/mysql/bin/mysqld_safe

mysqladmin = /usr/local/mysql/bin/mysqladmin

log        = /usr/local/mysql/mysqld_multi.err

#user       = mysql

#password   = my_password

[mysqld2]

port     = 3307

socket   = /tmp/mysql.sock1

pid-file = /usr/local/mysql/var/data1/ubuntu2.pid1

datadir  = /usr/local/mysql/var/data1

log      = /usr/local/mysql/var/data1/mysql_1.log

user     = mysql

[mysqld3]

port       = 3308

socket     = /tmp/mysql.sock2

pid-file   = /usr/local/mysql/var/data2/ubuntu2.pid2

datadir    = /usr/local/mysql/var/data2

log        = /usr/local/mysql/var/data1/mysql_2.log

user       = mysql

是的,就这么点,你没有看错!因为我就起了2个实例。

6、执行

mysqld_multi --defaults-extra-file=/usr/local/mysql/etc/mysqld_multi.cnf report

#report 参数不仅仅是用来报告目前的数据库运行状态,而且还可以用来检查配置文件的格式,参数是否正确,配合/usr/local/mysql/mysqld_multi.err错误日志可以很容易的发现配置中的一些基本错误。

启动:mysqld_multi --defaults-extra-file=/usr/local/mysql/etc/mysqld_multi.cnf start

#查看是否有活动进程

ps -aux|grep mysql

#查看相应端口是否已经被监听

netstat -tunlp

通过sock文件登录

mysql -u root -p -S /tmp/mysql1.sock

********************************************************

参考文章:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值