『壹』 如何搭建db2数据库
1.找到命令行dbcmd打开电脑,进入电脑操作系统,使用快捷键组合WINR...
2.使用db2start启动db2数据库通过以上方法,在电脑中找到db2命令行db50p...
3.完成db2数据库的启动在dbcmd运行界面中,输入db2start,开始启动d...
4.使用createdatabase命令创建数据库待系统启动db2数据库完成后,...
5.db2数据库的创建在dbcmd运行界面中,输入:“db2createdatab..
『贰』 在linux上如何邦定一个db2数据库
一、安装前准备工作:
1、对于Linux系统,至ibm网站下载软件包
2、Linux内核设置:编辑/etc/sysctl.conf文件
3、创建相应用户以及组:
4、创建相应目录用于存放db2的数据文件以及日志文件:
这里在根下面创建一个db2总目录,然后创建了一个15G大小的逻辑卷挂载/db2下面,然后在其下面创建相应的文件夹。
database目录存放数据库实例
db2log1存放db2的主日志文件
db2log2存放镜像日志文件
db2temp存放db2临时表空间
db2用户的家目录的位置
二、安装过程:
安装可以使用root用户安装也可以使用非root用户安装,这里就直接使用root用户安装了。
以root身份执行db2setup,会弹出以下画面:
这里选择安装企业版,点击install new:
下一步之后,就出现创建用户的画面:
最后点击finish开始安装过程。
三、创建数据库:
如果在安装过程中,没有创建数据库,则后续可以使用db2cc命令创建数据库。这是一个基于图形界面的管理工具,使用起来也非常方便。执行db2cc后,会弹出以下画面:
点击右侧的Create New Database,创建数据库:
指定数据库名称以及存放位置,选中Let DB2 manage my storage,下一步:
点击finish开始创建。默认db2会创建以下三个表空间:
(1)、catalog table space用于存放catalog表。
(2)、user table space存放所有表和索引数据。
(3)、temporary table space临时数据的存放位置。
创建完成后,会看到如下画面:
此时还没有连接到xzxjdb1上,点击右侧的connect进行连接。连接之后,会看到右侧多了好多信息:
使用命令行查看当前数据库中表空间信息:
四、DB2的简单管理:
1、查看表空间信息:
2、查看表信息:
3、查看当前实例下的所有数据库信息:
4、停止数据库:
5、启动数据库:
6、设置实例自动启动:
《Linux就该这么学》里有相关介绍,建议看看。
『叁』 如何建立DB2分区数据库
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;
『肆』 db2常用命令
操作数据库复命令
1、制 启动数据库实例
#db2start
2、 停止数据库实例
#db2stop
如果你不能停止数据库由于激活的连接,在运行db2stop前执行db2 force application all就可以了 /db2stop force
3、 创建数据库
#db2 create db [dbname]
4、 连接到数据库
#db2 connect to [dbname] user[username] using [password]
5、 断开数据库连接
#db2 connect reset
操作数据表命令
1、 列出所有用户表
#db2 list tables
2、列出所有系统表
#db2 list tables for system
3、列出所有表
#db2 list tables for all
4、 列出系统表
#db2 list tables for system
5、列出用户表
#db2 list tables for user
6、 列出特定用户表
#db2 list tables for schema[user]
『伍』 db2实例数据库创建
登录到AIX上
cd 到DB2 安装路径\instance
su 到root
db2icrt 创建实例
su db2 user
db2 create db 创建DB
『陆』 我把DB2数据库安装完了,谁能告诉我如何创建数据库
在发出 CREATE DATABASE 命令时,DB2 会创建许多文件,这个在前面已经见过。这些文件包括日志文件、配置信息、历史文件和三个表空间。这些表空间是:
SYSCATSPACE:这是保存 DB2 系统编目的地方,系统编目跟踪与 DB2 对象相关联的所有元数据。 TEMPSPACE1:DB2 用来放置中间结果的临时工作区域。 USERSPACE1:默认情况下存放所有用户对象(表、索引)的地方。所有这些文件都放在默认驱动器上的 DB2 目录中。默认驱动器通常是安装 DB2 产品的卷。
对于简单的应用程序,这个默认配置应该可以满足需要。但是,可能希望改变数据库文件的位置,或者改变 DB2 管理这些对象的方式。接下来,我们将更详细地研究 CREATE DATABASE 命令。
对于从 DB2 8 进行迁移的用户,有一个特殊的注意事项:在 DB2 9 之前,CREATE DATABASE 命令会为上面列出的所有对象创建 SMS 表空间。在 DB2 9 中,所有表空间都将定义为自动存储(DMS)表空间。
以下的 CREATE DATABASE 命令将数据库放在 Windows 操作系统下的 D: 驱动器上的 TEST 目录中:
CREATE DATABASE MYDB ON D:\TEST
选择 Automatic storage(默认设置)允许 DBA 为数据库设置在创建所有表空间容器时可以使用的存储路径。DBA 不必显式地定义表空间的位置和大小,系统将自动地分配表空间。例如,下面的数据库创建语句将为数据库中的所有表空间设置自动存储。
CREATE DATABASE TEST
AUTOMATIC STORAGE ON /db2/storagepath001,
/db2/storagepath002,
/db2/storagepath003
AUTORESIZE YES
INITIALSIZE 300 M
INCREASESIZE 75 M
MAXSIZE NONE
在 AUTOMATED STORAGE ON 选项后面,给出了三个文件目录(路径)。这三个路径是一个表空间的容器的位置。其他的选项是:
AUTORESIZE YES 当表空间用光空间时,系统将自动地扩展容器的大小。 INITIALSIZE 300 M 没有定义初始大小的任何表空间的大小默认为 300 MB。每个容器是 100 MB(有三个存储路径)。 INCREASESIZE 75 M (或百分数) 当表空间用光空间时,表空间的总空间增加 75 MB。还可以指定一个百分数,在这种情况下,表空间会增长它的当前大小的百分数。 MAXSIZE NONE 表空间的最大大小没有限制。如果 DBA 希望限制一个表空间可以占用的存储空间,那么可以指定一个最大值。
当使用 AUTOMATIC STORAGE 定义表空间时,不需要提供其他参数: CREATE TABLESPACE TEST MANAGED BY AUTOMATIC STORAGE;
在这个命令中,可以提供与表空间相关联的任何参数;但是,使用自动存储可以大大简化日常的表空间维护。与重要的大型生产表相关联的表空间可能需要 DBA 更多地干预。 在没有启用自动存储的数据库中创建表空间时,必须指定 MANAGED BY SYSTEM 或 MANAGED BY DATABASE 子句。使用这些子句会分别创建 SMS 表空间和 DMS 表空间。在这两种情况下,都必须提供容器的显式列表。
如果数据库启用了自动存储,那么有另一个选择。可以指定 MANAGED BY AUTOMATIC STORAGE 子句,或者完全去掉 MANAGED BY 子句(这意味着自动存储)。在这种情况下,不提供容器定义,因为 DB2 会自动地分配容器。
代码页和整理次序
所有 DB2 字符数据类型(CHAR、VARCHAR、CLOB、DBCLOB)都有一个相关联的字符代码页。可以认为代码页是一个对照表,用来将字母数字数据转换为数据库中存储的二进制数据。一个 DB2 数据库只能使用一个代码页。代码页是在 CREATE DATABASE 命令中使用 CODESET 和 TERRITORY 选项设置的。代码页可以使用单一字节表示一个字母数字字符(单一字节可以表示 256 个独特元素),也可以使用多个字节。
英语等语言包含的独特字符相当少;因此单字节代码页对于存储数据足够了。日语等语言需要超过 256 个元素才能表示所有的独特字符;因此需要多字节代码页(通常是双字节代码页)。
在默认情况下,数据库的整理次序根据 CREATE DATABASE 命令中使用的代码集进行定义。如果指定选项 COLLATE USING SYSTEM,就根据为数据库指定的 TERRITORY 对数据值进行比较。如果使用选项 COLLATE USING IDENTITY,那么以逐字节的方式使用二进制表示来比较所有值。
DB2 Administration Guide 列出了创建数据库时可用的各种代码页。在大多数情况下,DBA 会让这个设置保持为数据库所在的操作系统的默认代码页。
对于需要使用 XML 数据的应用程序,有一个特殊的注意事项。当前,DB2 只在定义为 Unicode(UTF-8)的数据库中支持 XML 列。如果数据库在创建时没有启用 Unicode 支持,就不能在其中创建 XML 列。