mysql双实例的登录_mysql多个实例 - zhengDavid的个人空间 - OSCHINA - 中文开源技术交流社区...

1>、关闭原有的默认端口3306的mysql:service mysqd stop

2>、拷贝或创建数据文件 cp -r /data/mysql/data1 /data/mysql/data_3307

格式  用bin/mysql_install_db --basedir=mysql的目录 --datadir=数据存放的目录 --user=所属的用户

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql/data_3307/ 创建一个新的空数据库

3>给数据文件赋予mysql用户与用户组

chown -R mysql.mysql /data/mysql/data_3307

4>创建multi的配置cnf文件,用于启动这个mysql实例(如3307)载入执行

touch /usr/local/mysql/my_multi.cnf

[mysqld_multi]

mysqld    = /usr/bin/mysqld_safe

mysqladmin = /usr/bin/mysqladmin

user      = root    #用于登陆和关闭此服务

password  = 123456  #同上

[mysqld3307]

socket    = /data/mysql/data_3307/mysql_3307.sock

port      = 3307

pid-file  = /var/lib/mysql_3307/3307.pid

datadir    = /data/mysql/data_3307

log        = /var/lib/mysql_3307/3307.log

character-set-server    = utf8

user      = mysql

5>启动你的多实例

./bin/mysqld_multi  --defaults-extra-file=/usr/local/mysql/my_multi.cnf start 3307

question:my_print_defaults command not found.

solve:export PATH=/usr/local/mysql/bin:$PATH(只只是临时有效,要永久生效,在/etc/profile编辑)

6>检查是否启动成功

端口监听 netstat -ntlp

活动进程 ps -ef | grep mysql

如果没有发现你要的端口号mysql实例,可以检查下/var/lib/mysql_3307/3307.log文件,排除问题

7>设置新的密码mysqladmin -uroot -S /data/mysql/data_3307/mysql_3307.sock password 123456

8>报错/usr/sbin/mysqld: ambiguous option '--log=/var/lib/mysql/mysql.log' (log-bin, log_slave_updates)

猜测配置文件出错,那个log应该是旧版本的配置吧,改换general_log_file= /var/lib/mysql_3307/3307.log

9>登陆

端口登陆./bin/mysql -uroot -p -h127.0.0.1 -P3306

socket文件登陆 mysql -S /data/mysql/data_3307/mysql_3307.sock

10>加到开机启动(service mysqld_multi report/start 端口使用)

将启动脚本复制一份cp /usr/local/mysql/support-files/mysqld_multi.server /etc/init.d/mysqld_multi

报了一个错误 是找不到 my_print_defaults

解决:ln -s /usr/local/mysql/bin/my_print_defaults /usr/bin/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值