发布网友 发布时间:2022-04-22 08:01
共3个回答
懂视网 时间:2022-05-01 11:35
DB2没有独立的用户管理系统,必须借用OS用户来提供安全性认证,所以这里需要创建 LINUX用户和组。一共创建了3个组,每个组一个用户。其作用和含义分别是:
数据库管理服务器DAS用户 dasusr1 组名: dasadm1
管理实例的用户 db2inst1 组名:db2iadm1
受防护用户 db2fenc1 组名: db2fadm1
[root@localhost bin]# groupadd -g 901 db2iadm1
[root@localhost bin]# groupadd -g 902 db2fadm1
[root@localhost bin]# groupadd -g 903 dasadm1
[root@localhost bin]# useradd -g db2iadm1 -u 801 -d /home/db2inst1 -m db2inst1
[root@localhost bin]# useradd -g db2fadm1 -u 802 -d /home/db2fenc1 -m db2fenc1
[root@localhost bin]# useradd -g dasadm1 -u 803 -d /home/dasusr1 -m dasusr1
[root@localhost bin]# passwd db2inst1
passwd: all authentication tokens updated successfully.
[root@localhost bin]# passwd db2fenc1
[root@localhost bin]# passwd dasusr1
[root@localhost bin]# more /etc/group |grep db2
db2grp:x:901:
db2fgrp:x:902:
db2agrp:x:903:
[root@localhost server]# more /etc/passwd |grep db2
db2inst1:x:801:901::/home/db2inst1:/bin/sh
db2fenc:x:802:902::/home/db2fenc:/bin/sh
db2das:x:803:903::/home/db2das:/bin/sh
需要以root用户创建das和实例。分别用下面2个命令:
dascrt创建的是DB2 adminstration server,每台服务器只有一个这种server,为进行DB2管理(比如运行控制中心)所必须,同时指定其管理用户是db2das;
db2icrt 创建的是实例,其名字一般和管理用户名一样,这里均为db2inst1;
创建成功以后,系统在db2das和db2inst1相应的home目录下产生了一个子目录。/home/db2inst1/sqllib目录中包括了 一个db2profile文件,包括了设定各个db2实例中用到的环境变量,如DB2INSTANCE和各种命令的搜索路径,库的路径等,必须执行它,才 能进行各种操作,或者将. ~/sqllib/db2profile一行加入/home/db2inst1/.profile文件(因为创建db2inst1用户时指定了shell 类型是/bin/sh,如果是其他shell,则采用不同的profile文件,比如bash则采用.bash_profile),这样当切换到 db2inst1用户时就会自动执行这个脚本。db2das用户的设置脚本文件位于/home/db2das/das/dasprofile,同样需要执 行这个脚本,才能执行db2admin等命令。用db2ilist命令可以查出当前已创建的实例名。
[root@localhost server]# cd /opt/ibm/db2/V10.1/instance
[root@localhost instance]# ./dascrt -u dasusr1 (注:创建DB2管理服务器)
SQL4406W The DB2 Administration Server was started successfully.
DBI1070I Program dascrt completed successfully.
[root@localhost instance]# ./db2icrt -u db2inst1 db2inst1
(注:创建DB2实例)或者[root@localhost instance]# ./db2icrt -a server -u db2fenc1 db2inst1 (注:创建DB2实例)
这里dascrt创建的是DB2 adminstration server,每台服务器只有一个这种server,为进行DB2管理(比如运行控制中心)所必须,同时指定其管理用户是db2dasusr1 ,db2icrt创建的是实例,其名字一般和管理用户名一样,这里db2fenc1指定db2inst1为它的防护用户,而db2inst1为一实例用户
DBI1070I Program db2icrt completed successfully.
-sh-3.2$ db2ilist
db2inst1
启动DB2实例
切换到dasusr1用户,执行db2admin start启动DB2管理服务器。
切换到db2inst1用户,执行db2start启动数据库实例。
root用户也可以执行db2admin start命令。如果首次执行,则会提示如下横线以下信息。一般出现在刚刚用dascrt命令创建das之后。
[root@localhost das]# su dasusr1
-sh-3.2$ . das/dasprofile
-sh-3.2$ db2admin start
SQL4406W The DB2 Administration Server was started successfully.
[root@localhost instance]# su db2inst1
-sh-3.2$ ls
Desktop sqllib
-sh-3.2$ . sqllib/db2profile
-sh-3.2$ db2start
05/05/2011 20:13:08 0 0 SQL1063N DB2START processing was successful.
SQL1063N DB2START processing was successful.
----------
[root@localhost bin]# ./db2admin start
SQL4409W The DB2 Administration Server is already active.
首先要启动数据库实例,切换到 db2inst1用户,执行db2start命令启动数据库实例。
若需要,首先用db2stop命令停止实例,如果db2stop命令不能成功执行,可运行下面的命令来关闭数据库实例。首先在db2inst1用户下强制关闭实例上的所有应用程序。
$ db2 force applications all
$ db2stop关闭数据库实例。
上述步骤也可以简化为改用db2stop force命令。
启动数据库实例后用db2 create database 命令创建数据库,可以设定字符集、页大小等数据库选项。
数据库创建成功后,可以用db2 connect to命令连接数据库。然后就可以进行创建表、查询等操作了。
如果要尽快测试db2数据库的功能,也可以用命令创建db2自带的sample数据库。
-sh-3.2$ db2stop
2011-05-09 11:01:56 0 0 SQL1025N The database manager was not stopped because databases are still active.
SQL1025N The database manager was not stopped because databases are still active.
-sh-3.2$ db2 force applications all
DB20000I The FORCE APPLICATION command completed successfully.
DB21024I This command is asynchronous and may not be effective immediately.
-sh-3.2$ db2stop
2011-05-09 11:06:03 0 0 SQL1064N DB2STOP processing was successful.
SQL1064N DB2STOP processing was successful.
-sh-3.2$ db2start
05/08/2011 11:14:24 0 0 SQL1063N DB2START processing was successful.
SQL1063N DB2START processing was successful.
var cpro_id = "u6292429";
热心网友 时间:2022-05-01 08:43
我网上复制来的,可以稍微看下,其实DB2也有安装脚本的热心网友 时间:2022-05-01 10:01
一、安装前准备工作: