mysql多个实例 [英] mysql multiple instances

查看:111
本文介绍了mysql多个实例的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经安装了一个版本的mysql.之后,我将MySQL文件夹复制到名为mysql2的新文件夹中(以创建MySQL的第二个实例).

I have installed one version of mysql. After this I copy the MySQL folder to a new folder called mysql2 (to make the second instances of MySQL).

我已将my.cnf更改为此:

[mysqld_multi]
mysqld=/usr/bin/mysqld_safe
mysqladmin=/usr/bin/mysqladmin
log=/var/log/mysqld_multi.log
user=multi_admin
password=secret
[mysqld1]
port=3306
datadir=/var/lib/mysql
pid-file=/var/lib/mysql/mysql.pid
socket=/var/lib/mysql/mysql.sock
user=mysql
log-error=/var/log/mysql1.err
server-id=1
log-bin=mysql-bin

[mysqld2]
port=3308
datadir=/var/lib/mysql2
pid-file=/var/lib/mysql2/mysql.pid
socket=/var/lib/mysql2/mysql.sock
user=mysql
log-error=/var/log/mysql2.err
server-id=2
log-bin=mysql-bin

mysqld_multi开始,停止,报告的所有内容都可以.问题:

From mysqld_multi all the things about start, stop, report is ok. The problem:

当我从命令行尝试时:mysql -P 3306.它连接到第一个实例.如果我尝试:mysql -P 3308.同样的事情.

When I try from comand line: mysql -P 3306. It connect to the first instances. If I try: mysql -P 3308. The same thing.

如果我尝试:mysql -S /.../mysql2/mysql.sock.有用.当我尝试时,相同的白色实例:mysql -S /.../mysql/mysql.sock.

If I try: mysql -S /.../mysql2/mysql.sock. It works. The same whit first instances when I try: mysql -S /.../mysql/mysql.sock.

我该怎么做才能通过端口连接?或者如何从PHP连接到第二个实例,而在第二个实例中只能通过mysql.sock来做到这一点.

What can I do to connect by port? Or how can I connect from PHP to second instances where in comand line I can do it only by mysql.sock.

推荐答案

在Linux上,除非您指定数字主机,否则客户端始终通过套接字连接.所以

On Linux the client always connects through sockets unless you specify a numeric host. So

mysql -h127.0.0.1 -P3308

Mysql沙箱为您完成了所有这些操作,但是对于生产而言,我将使用两台计算机.

Mysql sandbox does all this for you, but for production I would go with two machines.

这篇关于mysql多个实例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆