免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1400 | 回复: 0
打印 上一主题 下一主题

LINUX下启动多个MYSQL服务 [复制链接]

论坛徽章:
1
15-16赛季CBA联赛之北控
日期:2022-03-04 22:35:50
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-05-29 08:38 |只看该作者 |倒序浏览

作者: yreqab  出自: http://www.linuxdiyf.com
查了下网上的操作方式,虽然都是启动多个mysql socket但是配置略有区别,网上都是用mysqld_multi这个命令在my.cnf下配置,而我们这里的方式是直接在启动mysqld时指定不同的cnf,启动多个Mysqld,可能意思是一样的。
不过以下方法在ubuntu下尝试失败,在redhat9下确成功,暂时没找到问题,估计是 ubuntu启动MYSQL时设置的进程不太一样,我这里总提示写进程文件时冲突。
redhat9的mysql是rmp安装的。
将/var/lib/mysql/下的mysql目录(包含了mysql的基础数据库表)copy到其他目录,这里是 /home/mysql/mysql3304/mysql下(不要在copy到/var/lib/mysql下,这样mysql在启动时会认为有一个叫 3304的数据库存在)
在mysql3304下建立3304.cnf 内容如下:
[mysqld]
datadir=/home/mysql/mysql3304 #复制出来的数据库目录
port=3304
socket=/tmp/mysql3304.sock #端口号的socket地址
set-variable = max_connections=500
set-variable = key_buffer=256M
set-variable = max_allowed_packet=5M
set-variable = table_cache=500
set-variable = sort_buffer=8M
set-variable = record_buffer=8M
set-variable = myisam_sort_buffer_size=64M
set-variable = thread_cache=8
set-variable = connect_timeout=20
set-variable = thread_concurrency=2
log-bin
server-id=1
将所有文件权限修改为mysql组,否则会出现启动时进程不能写入文件的错误。
启动时输入 safe_mysqld –defaults-file=/home/mysql/mysql3304/3304.cnf
该端口的进程就启动了,在访问该数据库时输入mysql -u root -p -S /tmp/mysql3304.sock,密码同最原始的Mysql数据库密码一样。
如果需要在建立其他端口号的数据库,继续上面的操作,如果copy的是3304这个目录的话,一定要将pid文件删除,包含了当前的进程号,肯定会有冲突。
如果在服务器启动时开启多个mysql,在/etc/rc.local下增加 safe_mysqld–defaults-file=/home/mysql/mysql3304/3304.cnf &


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/31/showart_714909.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP