12
返回列表 发新帖
楼主: kerlion

[原创] mysql可以一个code运行多个实例吗?

[复制链接]
论坛徽章:
25
ITPUB元老
日期:2005-02-28 12:57:00咸鸭蛋
日期:2013-02-07 11:51:42咸鸭蛋
日期:2013-02-08 09:48:51蜘蛛蛋
日期:2013-02-21 15:47:392013年新春福章
日期:2013-02-25 14:51:24咸鸭蛋
日期:2013-02-28 17:08:42蜘蛛蛋
日期:2013-03-29 16:17:14双黄蛋
日期:2013-04-11 16:11:04咸鸭蛋
日期:2013-05-07 11:55:14咸鸭蛋
日期:2013-05-28 10:46:24
11#
 楼主| 发表于 2011-7-7 16:53 | 只看该作者
建立共享同一个代码的多个实例,每个实例有独立的用户名和my.cnf

实例1
=============================
停掉缺省的实例
/etc/init.d/mysql stop
rm -fr /var/lib/mysql/

#useradd -g mysql -d /DB/mysql3201  mysql3201
#su - mysql 3201

create $HOME/my.cnf
cd
ln -s my.cnf .my.cnf

建立系统表
mysql_install_db --user=mysql3201 --basedir=/usr --datadir=/DB/mysql3201/data

启动
mysqld_safe --user=mysql3201 --datadir=/DB/mysql3201/data &

/usr/bin/mysqladmin -u root password 'oracle'
/usr/bin/mysqladmin -u root -h hwz.xyz.com password 'oracle'

验证:
mysql -u root -p
mysql>  show variables like '%dir%';
+-----------------------------------------+----------------------------+
| Variable_name                           | Value                      |
+-----------------------------------------+----------------------------+
| basedir                                 | /usr                       |
| binlog_direct_non_transactional_updates | OFF                        |
| character_sets_dir                      | /usr/share/mysql/charsets/ |
| datadir                                 | /DB/mysql3201/data/        |
| innodb_data_home_dir                    | /DB/mysql3201/innodb       |
| innodb_log_group_home_dir               | /DB/mysql3201/innodb_log   |
| innodb_max_dirty_pages_pct              | 90                         |
| lc_messages_dir                         | /usr/share/mysql/          |
| plugin_dir                              | /usr/lib/mysql/plugin      |
| slave_load_tmpdir                       | /tmp                       |
| tmpdir                                  | /tmp                       |
+-----------------------------------------+----------------------------+
11 rows in set (0.00 sec)

mysql>


关闭
mysqladmin  shutdown
mysqladmin -u root -p shutdown

实例2
=============================
#useradd -g mysql -d /DB/mysql3302  mysql3302
#su - mysql3302

准备参数文件
create $HOME/my.cnf
cd
[mysql3302@hwz ~]$ grep 3302 my.cnf
port            = 3302
socket          = /DB/mysql3302/var/mysql.sock
port            = 3302
socket          = /DB/mysql3302/var/mysql.sock
innodb_data_file_path = ib3302_data1:10M:autoextend
innodb_data_home_dir = /DB/mysql3302/innodb
innodb_log_group_home_dir=/DB/mysql3302/innodb_log
datadir=/DB/mysql3302/data

ln -s my.cnf .my.cnf

建立系统表
mysql_install_db --user=mysql3302 --basedir=/usr --datadir=/DB/mysql3302/data

启动
mysqld_safe --user=mysql3302 --datadir=/DB/mysql3302/data &

/usr/bin/mysqladmin -u root password 'oracle'
/usr/bin/mysqladmin -u root -h hwz.xyz.com password 'oracle'

验证:
mysql -u root -p
mysql>  show variables like '%dir%';
+-----------------------------------------+----------------------------+
| Variable_name                           | Value                      |
+-----------------------------------------+----------------------------+
| basedir                                 | /usr                       |
| binlog_direct_non_transactional_updates | OFF                        |
| character_sets_dir                      | /usr/share/mysql/charsets/ |
| datadir                                 | /DB/mysql3302/data/        |
| innodb_data_home_dir                    | /DB/mysql3302/innodb       |
| innodb_log_group_home_dir               | /DB/mysql3302/innodb_log   |
| innodb_max_dirty_pages_pct              | 90                         |
| lc_messages_dir                         | /usr/share/mysql/          |
| plugin_dir                              | /usr/lib/mysql/plugin      |
| slave_load_tmpdir                       | /tmp                       |
| tmpdir                                  | /tmp                       |
+-----------------------------------------+----------------------------+
11 rows in set (0.00 sec)

mysql>


关闭
mysqladmin  shutdown
mysqladmin -u root -p shutdown


配置文件
[mysql3302@hwz DB]$ find . -name my.cnf
./mysql3201/my.cnf
./mysql3302/my.cnf
[mysql3302@hwz DB]$ find . -name mysql.sock
./mysql3201/var/mysql.sock
./mysql3302/var/mysql.sock

使用道具 举报

回复
论坛徽章:
25
ITPUB元老
日期:2005-02-28 12:57:00咸鸭蛋
日期:2013-02-07 11:51:42咸鸭蛋
日期:2013-02-08 09:48:51蜘蛛蛋
日期:2013-02-21 15:47:392013年新春福章
日期:2013-02-25 14:51:24咸鸭蛋
日期:2013-02-28 17:08:42蜘蛛蛋
日期:2013-03-29 16:17:14双黄蛋
日期:2013-04-11 16:11:04咸鸭蛋
日期:2013-05-07 11:55:14咸鸭蛋
日期:2013-05-28 10:46:24
12#
 楼主| 发表于 2011-7-7 16:54 | 只看该作者
昨天刚开始学习mysql,先从安装学起,以后和大家多交流

使用道具 举报

回复
论坛徽章:
52
2015年新春福章
日期:2015-03-06 11:57:312012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:32:552012新春纪念徽章
日期:2012-02-07 09:59:35
13#
发表于 2011-7-7 18:26 | 只看该作者
原帖由 kerlion 于 2011-7-7 16:54 发表
昨天刚开始学习mysql,先从安装学起,以后和大家多交流



欢迎多来论坛交流啊....

你这样做也成,但是管理起来麻烦,对于你说的迁移问题,毕竟是发生的小概率事件,我们都是规划好的

另外多实例的话,建议参考网站:www.mysqlops.com上介绍NUMA的使用

使用道具 举报

回复
论坛徽章:
11
2010新春纪念徽章
日期:2010-03-01 11:19:072014年新春福章
日期:2014-02-18 16:42:02优秀写手
日期:2014-02-09 06:00:122011新春纪念徽章
日期:2011-02-18 11:43:34数据库板块每日发贴之星
日期:2010-12-22 01:01:01数据库板块每日发贴之星
日期:2010-11-26 01:01:012010广州亚运会纪念徽章:拳击
日期:2010-11-22 15:26:49ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51数据库板块每日发贴之星
日期:2010-07-10 01:01:04数据库板块每日发贴之星
日期:2010-07-07 01:01:01
14#
发表于 2011-7-8 12:17 | 只看该作者
我现在就是在一台DB服务器上MySQL跑多个进程,顺便提一下,MySQL对大内存的情景下性能不能充分利用

所以用多进程来充分利用

我目前是起的三个进程同时,12G内存

也可以写三个配置文件,my_330**f  my_3307.cnf  my_3308.cnf

我就是这样弄的,然后不同的进程生成的文件放到不同的文件夹下

使用道具 举报

回复
论坛徽章:
11
2010新春纪念徽章
日期:2010-03-01 11:19:072014年新春福章
日期:2014-02-18 16:42:02优秀写手
日期:2014-02-09 06:00:122011新春纪念徽章
日期:2011-02-18 11:43:34数据库板块每日发贴之星
日期:2010-12-22 01:01:01数据库板块每日发贴之星
日期:2010-11-26 01:01:012010广州亚运会纪念徽章:拳击
日期:2010-11-22 15:26:49ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51数据库板块每日发贴之星
日期:2010-07-10 01:01:04数据库板块每日发贴之星
日期:2010-07-07 01:01:01
15#
发表于 2011-7-8 12:19 | 只看该作者
NUMA是把人害惨了啊,我就是吃了NUMA的亏的,NND,没办法,不能规避,只能面对

使用道具 举报

回复
论坛徽章:
52
2015年新春福章
日期:2015-03-06 11:57:312012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:33:22生肖徽章2007版:龙
日期:2012-02-07 10:32:552012新春纪念徽章
日期:2012-02-07 09:59:35
16#
发表于 2011-7-8 13:17 | 只看该作者
原帖由 fan0124 于 2011-7-8 12:17 发表
我现在就是在一台DB服务器上MySQL跑多个进程,顺便提一下,MySQL对大内存的情景下性能不能充分利用

所以用多进程来充分利用

我目前是起的三个进程同时,12G内存

也可以写三个配置文件,my_330**f  my_3307.cnf  my_3308.cnf

我就是这样弄的,然后不同的进程生成的文件放到不同的文件夹下




内存是可以利用,只要是用InnoDB引擎的话,关键是CPU........文章:http://www.mysqlops.com/2011/07/01/mysql_multi_using_numactl.html
介绍了如何绑定CPU的做法

使用道具 举报

回复
论坛徽章:
25
ITPUB元老
日期:2005-02-28 12:57:00咸鸭蛋
日期:2013-02-07 11:51:42咸鸭蛋
日期:2013-02-08 09:48:51蜘蛛蛋
日期:2013-02-21 15:47:392013年新春福章
日期:2013-02-25 14:51:24咸鸭蛋
日期:2013-02-28 17:08:42蜘蛛蛋
日期:2013-03-29 16:17:14双黄蛋
日期:2013-04-11 16:11:04咸鸭蛋
日期:2013-05-07 11:55:14咸鸭蛋
日期:2013-05-28 10:46:24
17#
 楼主| 发表于 2011-7-17 10:46 | 只看该作者
个人觉得还是独立的好
后来我发现可以用参数--defaults-extra-file来指定my.cnf,这样就可以在用一个用户下使用了,我的启动脚本是这样的


cat InstA_start.ksh
MYSQL_CONF=/DB/InstA/data/my.cnf
mysqld_safe --defaults-extra-file=$MYSQL_CONF &

cat InstB_start.ksh
MYSQL_CONF=/DB/InstB/data/my.cnf
mysqld_safe --defaults-extra-file=$MYSQL_CONF &

cat InstC_start.ksh
MYSQL_CONF=/DB/InstC/data/my.cnf
mysqld_safe --defaults-extra-file=$MYSQL_CONF &

使用道具 举报

回复
论坛徽章:
42
ITPUB季度 技术新星
日期:2012-05-22 15:10:11祖母绿
日期:2013-09-13 21:16:10蓝锆石
日期:2013-09-13 21:15:34海蓝宝石
日期:2013-09-13 21:13:45最佳人气徽章
日期:2012-03-13 17:39:18优秀写手
日期:2013-12-18 09:29:11ITPUB社区12周年站庆徽章
日期:2013-10-17 13:56:592013年新春福章
日期:2013-02-25 14:51:24玉石琵琶
日期:2012-02-21 15:04:38ITPUB 11周年纪念徽章
日期:2012-10-09 18:08:15
18#
发表于 2011-7-22 11:55 | 只看该作者
http://www.xifenfei.com/1178.html
mysql 安装并启动多个实例

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表