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

如何将DB2数据库建在其他目录下,create db dbname on不行呀

[复制链接]
论坛徽章:
1
2013年新春福章
日期:2013-02-25 14:51:24
11#
发表于 2002-11-14 09:12 | 只看该作者
分为dms , sms
需要sysadm用户权限,这个用户对要用的目录和文件要有写权限,同时这个用户也是os user

使用道具 举报

回复
论坛徽章:
0
12#
 楼主| 发表于 2002-11-14 17:55 | 只看该作者
几天没有来,大家讨论得这么热烈,大家真是太热心了。首先感谢大家的热心回答!!!

我要把数据库建立在/dbdir这个目录的原因是,因为这个机器安装了HA,我想把数据库建立在
磁盘阵列上面,我用 smitty clstart启动了HA,现在ip地址也从boot ip改变到了另外的ip,是否可以证明HA配置是正常的呢?

而且我也可以看到并手工mount上datavg了,可是我在datavg上最多只能够建立512个pp,也就10多个G左右的空间,好像空间不应该这么少呀。也先不管着许多了,我又尝试在datavg上建立了一个fs 把它mount到了/dbdir这个目录,我也不想建立裸设备, 可是我使用DB2的db2inst1这个特权用户尝试建立数据库到/dbdir上,提示我不能访问/dbdir ,但我却可以在上面touch建立新文件,
我又尝试把该目录设置权限为777但建立数据库还是失败,是否我应该把该目录的所有者也改变一下呢?

因为调试的场地不具备上网的环境,刚刚看到大家的回复。我在AIX上很菜接触不多,请各位再帮我分析一下原因吧。谢谢各位先!!!

使用道具 举报

回复
论坛徽章:
4
授权会员
日期:2005-10-30 17:05:33ITPUB元老
日期:2005-12-01 10:11:47管理团队2006纪念徽章
日期:2006-04-16 22:44:45会员2006贡献徽章
日期:2006-04-17 13:46:34
13#
发表于 2002-11-14 18:18 | 只看该作者

我的现场经验

如果要作HA必须连实例(instance)也建在磁盘阵列上。
例如你要建一个实例到磁盘阵列上:
在磁盘阵列上创建一个fs 并mount 到/home/(instance name)
同时要创建一个用户指向该fs 用户名和instance name相同;
使用root用户登录;
cd /usr/lpp/db2_07_01/instance
db2icrt -u (instance name) (instance name)
su - 该用户名。
直接使用
db2 create db dbname;
这样数据库就被建立在这个目录上了。
如果要做HA的话,还必须要做以下的步骤。
1.在另一台机器上创建相同的用户,记住要所有的信息都完全相同,包括用户ID,组名等等。
2.使用该机器接管磁盘阵列,使用instance的用户名是否能使用/home/instance name目录。如果不能,使用chown 命令改变该目录的拥有者和组。
3.将该目录下的sqllib目录改名为sqllib1
4.以root用户登录。
5. cd /usr/lpp/db2_07_01/instance
db2icrt -u (instance name) (instance name)
catalog db dbname
然后再建立HA脚本。
startdb.sh:
su - (instance name) -c "db2start";
stopdb.sh:
su - (instance name) -c " db2 force application all;db2 terminate; db2stop";
大概过程就是这个样子。

使用道具 举报

回复
论坛徽章:
21
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20版主1段
日期:2012-05-15 15:24:11管理团队成员
日期:2013-05-02 11:19:53马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:13:20
14#
发表于 2002-11-14 21:16 | 只看该作者
商榷一下,没有必要把实例创建在共享磁盘阵列上吧?
两台机器上分别创建实例(确保用户名,user id,group id等相同)
在一台机器上创建数据库,shutdown;另一台接管,catalog即可。
好像还需要通过ha管理工具将共享磁盘的信息同步到第二台机器。

使用道具 举报

回复
论坛徽章:
4
授权会员
日期:2005-10-30 17:05:33ITPUB元老
日期:2005-12-01 10:11:47管理团队2006纪念徽章
日期:2006-04-16 22:44:45会员2006贡献徽章
日期:2006-04-17 13:46:34
15#
发表于 2002-11-15 09:18 | 只看该作者
实例建在共享磁盘阵列中是最方便的选择,并且符合整体的安全性考虑。(磁盘阵列应该是本系统中安全性,可靠性最高的设备)
并且可以省去很多设置的麻烦。
例如,db2diag.log的路径不应该设置在单独的机器上,还有例如你需要作实例配置调整的时候,放在磁盘阵列上只要调一遍,如果放在各自的机器上,你必须在两边的机器上都调整。

使用道具 举报

回复
论坛徽章:
21
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20版主1段
日期:2012-05-15 15:24:11管理团队成员
日期:2013-05-02 11:19:53马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:13:20
16#
发表于 2002-11-16 19:11 | 只看该作者
需要作实例配置调整的时候,放在磁盘阵列上只要调一遍

有道理。不过看您写的过程太复杂,相对而言创建两个实例比较简单一些。

使用道具 举报

回复

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

本版积分规则 发表回复

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