如何在aix环境下创建DB2数据库

如何在aix环境下创建DB2数据库,第1张

查看环境变量 db2set 如果发现db2set中db2codepage不是819,执行以下是代码片段:db2set db2codepage=819db2 create database test05 on /home/db2inst1db2 connect to test05 user db2inst1 using db2 创建对应pagesize大小的缓冲池和表空间以下是代码片段:db2 CREATE Bufferpool USER8 SIZE 1000 PAGESIZE 8Kdb2 CREATE Bufferpool USER16 SIZE 1000 PAGESIZE 16 Kdb2 CREATE Bufferpool USER32 SIZE 1000 PAGESIZE 32 Kdb2stop force ( 可以先用:db2stop 、db2 terminate进行停止)db2startdb2 connect to test05 user db2inst1 using db2db2 "CREATE REGULAR TABLESPACE TS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('FSMS_8K_1') BUFFERPOOL USER8"db2 "CREATE REGULAR TABLESPACE TS_USER16 PAGESIZE 16K MANAGED BY SYSTEM USING ('FSMS_16K_1') BUFFERPOOL USER16"db2 "CREATE REGULAR TABLESPACE TS_USER32 PAGESIZE 32K MANAGED BY SYSTEM USING 创建临时表空间(用于缓冲查询结果或者临时表)以下是代码片段:db2 CREATE Bufferpool TMPBUF8 SIZE 10000 PAGESIZE 8Kdb2 "CREATE TEMPORARY TABLESPACE TempTS_USER8 PAGESIZE 8K MANAGED BY 给相关用户付权限以下是代码片段:db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,LOAD ON DATABASE TO USER EASYMISdb2 GRANT USE OF TABLESPACE TS_USER8 TO easymisdb2 GRANT USE OF TABLESPACE TS_USER16 TO easymisdb2 GRANT USE OF TABLESPACE TS_USER32 TO easymis 开始创建表、创建(这种方式是直接创建表、视图的方式,如果采用db2move的方式,那么则不需要)以下是代码片段:db2 connect to test05 user easymis using easymisdb2 -f dbstruct.sql >crttab.logdb2 -f view.sql >crtviw.log 恢复db2move备份的数据库(备份的过程参见后面的db2move的说明)以下是代码片段:db2move test05 import -l /home/db2inst1/wk/test04db2 -tvf view.sql >crtview.log #如果脚本是db2look,命令结束符为分号,行结束无特殊符号

问题描述:

Platform: AIX 5.3

DB2 version: DB2 V95

DB2 instance: db2ins95

DB2 instance 对应的系统级用户: db2ins95

现在有一个新的系统级用户名为:user1, 用user1登陆系统后, 输入db2level,显示以下结果

bash-3.00$ db2level

bash: db2level: command not found

我是想用user1登陆系统后,对数据库能进行所有的 *** 作,请问该怎么设置?谢谢。

需要在db2里给user1付权限。

还需要更改user1的.bashrc的文件,把db2的环境变量加进去,才能执行db2level之类的db2外部命令

能不能说的再详细些,非常感谢!!

(1)在db2中给usr1权限时,改哪些文件?

(2)怎么修改usr1中的.bashrc文件?

下面是/home/user1所有的文件

bash-3.00$ ls -al

total 40

drwx------    3 user1  staff           256 Jul 22 19:38 .

drwxr-xr-x   71 bin      bin            4096 Jul 01 09:23 ..

-rw-------    1 user1  staff          1652 Jul 25 02:27 .bash_history

-rwx------    1 user1  staff           254 Jul 01 09:23 .profile

-rw-------    1 user1  staff            82 Jul 25 18:05 .sh_history

-rw-------    1 user1  staff            28 Jul 22 21:54 .vi_history

drwx------    6 user1  staff           256 Jul 06 18:22 test

给user权限,是在db2中进行的。用grant

修改。bashrc之类的文件,用的是系统的命令,可以用vi来处理。你可以google一下看看。

系统中 增加用户

再在db2中 复权就可以了

创建用于 DB2 UDB 安装的组和用户标识(UNIX)

运行 DB2 需要三个用户和组。下表说明在下列指示信息中使用的用户和组名。只要遵守系统命名规则和 DB2 命名规则,您就可以指定您自己的用户和组名。

您创建的用户标识是完成后续设置任务所必需的。

表 11. 必需的用户和组 必需的用户         示例用户名         示例组名

实例所有者         db2inst1         db2iadm1

受防护的用户         db2fenc1         db2fadm1

DB2 管理服务器用户         dasusr1         dasadm1

实例所有者主目录是将在其中创建 DB2 实例的位置。

* 受防护的用户用来在 DB2 数据库使用的地址空间外部运行用户定义函数(UDF)和存储过程。

* DB2 管理服务器用户 的用户标识用来在系统上运行 DB2 管理服务器。 

先决条件

必须具有 root 用户权限才能创建用户和组。

过程

要为 DB2 创建必需的组和用户标识:

1. 作为具有 root 用户权限的用户登录。

2. 输入 *** 作系统的相应命令。

注:

7 7

这些命令行示例不包含密码。它们只是示例。可在命令行中使用 7 passwd username 参数来设置密码。

AIX

要在 AIX 上创建组,输入下列命令:

mkgroup id=999 db2iadm1

mkgroup id=998 db2fadm1

mkgroup id=997 dasadm1 

为每个组创建用户:

mkuser id=1004 pgrp=db2iadm1 groups=db2iadm1 home=/home/db2inst1

db2inst1

mkuser id=1003 pgrp=db2fadm1 groups=db2fadm1 home=/home/db2fenc1

db2fenc1

mkuser id=1002 pgrp=dasadm1 groups=dasadm1 home=/home/dasusr1

dasusr1

1) 了解分区定义

分区定义可以从节点配置文件(db2nodes.cfg)得到,其位于实例所有者的主目录中,它包含一些配置信息,告诉 DB2 有哪些服务器参与分区数据库环境的实例。分区数据库环境中的每个实例都有一个 db2nodes.cfg 文件。对于每个参与实例的服务器,db2nodes.cfg 文件必须包含一个条目。当创建实例时,会自动创建 db2nodes.cfg 文件并对拥有实例的服务器添加条目。这里我们假设有4个分区。

2) 创建数据库

create db dpfdb;

默认会创建3个分区组IBMCATGROUP(只在0号分区上)

IBMTEMPGROUP ,IBMDEFAULTGROUP(在所有分区上),如果用户没有创建其他分区组,所创建的表空间会默认放在IBMDEFAULTGROUP上

3) 创建分区组

我们在 1到3号分区建立一个分区组

CREATE DATABASE PARTITION GROUP USERGROUP ON DBPARTITIONNUMS(1,2,3);

4) 创建表空间

CREATE TABLESPACE TS IN USERGROUP MANAGED BY DATABASE USING (file '/DB2containers/TScontainer $N' 10000)

有4个containers被创建

/DB2containers/TScontainer0 - on DATABASE PARTITION 0

/DB2containers/TScontainer1 - on DATABASE PARTITION 1

/DB2containers/TScontainer2 - on DATABASE PARTITION 2

/DB2containers/TScontainer3 - on DATABASE PARTITION 3

5) 创建表

CREATE TABLE DPFTABLE (ID INTEGER NOT NULL,

NAME CHAR(20) NOT NULL)

IN TS

PARTITIONING KEY (ID) USING HASHING;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6692819.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存