在DB2数据库中,编目(catalog)这个单词很难理解,我自己当初在学习DB2的时候也常常被这个编目搞的很不明白,直到现在我个人也感觉到DB2中编目(catalog)这个术语用的不是很好,具体来说编目有编目节点,编目数据库等。
如果要理解编目,我先简单讲一下DB2数据库的体系结构,在DB2数据库中最大的概念是系统(节点)也就是主机,下面是实例,实例下面是数据库,然后是表空间,然后是数据库对象。现在假设你有一个数据库服务器在p570的机器上,你有一个客户端在windows,linux或任何平台上,你现在想建立一个客户端到服务器端的连接,具体步骤是什么呢?
第一步:
你必须要在客户端的机器上能够把远程的服务器能够识别出来,这个具体如何来做呢?在DB2使用的编目(catalog)方式,具体来说就是通过编目把远程的服务器写在本地客户端的一个文件中:
db2 catalog tcpip node p570 remote 172.10.10.10 server 50000
在上面的这条命令中p570是一个节点名(在一个机器上必须是唯一的),remote后面是服务器的IP地址,server是远程服务器上实例对应的端口号。DB2通过这种方式在本地的SQLNODIR文件中把远程服务器的信息记录下来,所以编目节点其实就是把远程服务器映射到本地,通过 SQLNODIR中的记录能够找到远程服务器和实例,类似指向远程服务器和实例的地址指针。
第二步:
当把远程的服务器IP地址,实例编目下来后,第二步应该把该实例下的数据库编目到本地
db2 catalog db REMOTEDB at node p570
在这条命令中,REMOTEDB是远程实例下的数据库,p570是我们在第一步中编目的节点名
这条命令执行后会在本地SQLDBDIR文件中记录远程数据库的信息,这这里编目数据库可以理解为把远程服务器实例下的数据库映射到本地为一个别名。
上面是客户端和服务器不在同一台机器上,是通过编目节点,编目数据库来实现客户端连接到服务器上数据库的目的,如果是连接在同一台机器上,那么这时候不要显示的编目节点,但是在服务器上当我们创建一个实例的时候,有一个隐含的把实例在本地编目的过程,假设在p570上创建一个实例名为 db2inst1,其实有一个隐含的
db2 catalog local node db2inst1 instance db2inst1 system p570 ostype aix的步骤,同样当你在db2inst1下创建一个数据库MYDB的时候,有一个隐含的编目(catalog)数据库的步骤:
db2 catalog db mydb at node db2inst1的步骤。
至此你可以这样理解编目(catalog),编目就是在本地或远程建立客户端到服务器的数据库连接的目的。
分享到:
相关推荐
#db2 create db 数据库名 alias 数据库别名 using codeset 字符集名 territory 语言环境名 pagesize 数据页大小 restrictive catalog tablespace managed by database using (file '路径文件名' 表空间大小) ...
- **实例**: 实例是在一个操作系统上运行的DB2服务实例,它包含了数据库管理系统的所有组件。 - **数据库**: 是存储数据的具体容器,每个实例可以包含多个数据库。 ##### 2. 查看数据库服务器中的数据库列表 - 进入...
2. 数据库编目:系统编目表(如SYSCAT.TABLES和SYSCAT.COLUMNS)保存了数据库中所有对象的信息。例如,SYSCAT.TABLES视图包含了所有表的信息,而SYSCAT.COLUMNS视图则列出表的所有列及其详细属性。 创建数据库时,...
27. **数据库编目**:`db2 catalog db db_name as db_alias at node node_name` 将数据库`db_name`编目为别名`db_alias`,指向节点`node_name`。 28. **查看数据库的编目**:`db2 list db directory` 显示已编目的...
系统默认创建三个表空间:系统编目、临时数据和用户数据。支持DMS和SMS两种表空间类型,各有特色。 【数据安全性】 DB2通过用户验证、权限控制(如SYSADM、SYSCTRL、SYSMAINT、DBADM)以及模式和应用程序实现数据...
本篇主要介绍DB2的一些基础操作命令,涵盖了数据库的启动、停止、连接、断开,实例的创建与删除,节点和数据库的编目,以及表空间的创建、删除等核心概念。 1. **数据库的启动与停止** - `db2start` 命令用于启动...
在DB2中,数据库被组织在表空间中,表空间又分布在数据库分区组内。这允许数据的分布和分区,以便于管理和优化性能。此外,系统目录是所有数据库分区共享的,它包含了数据库的相关信息。 DB2的这些特性使得它在...
- `db2 catalog` 和 `db2 uncatalog` 命令用于编目和取消编目 TCP/IP 节点和数据库,以便进行远程访问。 5. **表空间操作**: - `db2 CREATE BUFFERPOOL` 创建缓冲池,用于存储数据库数据的缓存。 - `db2 DROP ...
- **节点编目**:`db2 catalog tcp node <节点名> remote <服务器IP> server <服务器端口>`将远程数据库节点编目。 - **节点附接**:`db2 attach to <节点名>`连接到已编目的节点。 - **查看节点**:`db2 list ...
- 如果遇到“没有发现主机”错误,需要手动编目 DB2 节点,这包括取消当前节点编目、设置新的编目节点等步骤。 3. **启动和关闭服务端服务** - 有两种方法启动 DB2 数据库服务:使用命令行工具输入 `DB2start` 或...
2. **创建数据库管理表空间** `Data_SP`: ```sql db2 "create regular tablespace datasp1 pagesize 4k managed by database using ('/db2test/usrdata2.dbf' 5120) BUFFERPOOL IBMDEFAULTBP"; ``` 以上内容涵盖...
- **查看数据库对象**:连接到数据库后,使用`list tables`命令查看数据库中的所有表和视图。更多数据库结构信息查询,如触发器、存储过程等,可通过类似命令获取。 以上知识点涵盖了DB2数据库的基本管理和操作,从...
- **DB2 UDB数据库结构** 包含驱动器/目录、DB2实例名称、数据库分区、数据库ID、日志目录和各种表空间(如SYSCATSPACE、TEMPSPACE1、USERSPACE1等)。 2. **DB2 UDB内存架构和后台进程** - **实例共享内存** 是...
在Windows环境下,备份文件是一个嵌套的文件夹结构,包含数据库名、实例名、节点名、编目名、备份日期和时间戳等信息。而在Unix系统中,备份文件通常是一个单一文件,同样包含这些关键信息,但格式略有不同。 进行...
- 定义:表空间是数据库中的一组物理存储单元,用于存储数据库对象,如表、索引等。 - 分类:根据存储方式不同,表空间可分为本地表空间(Local)和全局表空间(Global)。 - 创建:使用`CREATE TABLESPACE`命令...
- `db2 catalog db <远程数据库名> as <节点名> at node PUB11`:编目远程数据库,并指定它在本地的节点名称。 8. **导出和导入数据库结构** - `db2 look -d <数据库名> -u <用户名> -e -o <文件名>.sql`:导出...