用简单的英语,为什么这种区别甚至存在:编目与未编目的IBM数据库?特别是IBM表示开放创建数据库已编目。 我什么时候应该编目数据库?什么时候应该取消编目?
答案 0 :(得分:1)
节点和数据库的目录(在DB2 linux / unix / windows中实现)的概念对于使用CLI(调用级接口)访问DB2数据库和服务器的应用程序非常有用。这包括使用CLP(命令行处理器)执行ksh / bash / cmd.exe等的脚本。
如果您使用的是jdbc Type-4驱动程序,则这些概念无用。如果您使用的是jdbc Type-2驱动程序,则目录仍然相关。
这些概念提供了一种间接访问服务器或数据库的方法,目的是避免对应用程序进行更改,以引用数据库的不同副本。
将节点目录视为指向数据库服务器的指针存储。可以将数据库目录视为指向节点上数据库的指针存储,这些节点可以是当前DB2实例的本地节点,或者节点可以引用其他DB2实例,这些实例本身可以位于同一主机名或远程主机名上。我们的想法是您可以更改指针(即数据库别名或节点)以引用不同的对象,而无需更改应用程序连接字符串。目录操作添加项(别名到数据库,或数据库或节点),uncatalog删除项 - 但不影响物理数据库。
DB2将目录(节点目录和数据库目录)实现为DB2客户机上的本地文件,或DB2服务器上存在的本地DB2客户机。
目录在您拥有许多开发和测试类别的环境中非常有用。您可以将数据库别名指向任何环境,这有利于数据交换或DDL或内容的比较 - 相关脚本或代码不需要更改或重新配置(除非凭据更改)
答案 1 :(得分:0)
一旦创建了一个数据库就会在LOCAL机器上编目,但如果你需要从远程系统访问它,你需要在那里对它进行编目,因为远程机器无法识别数据库的创建 - 显然。 除了目录数据库,您还需要一个标识远程系统的目录节点。
另一点是,如果您在创建数据库后卸载本地计算机上的Db2,则数据库将保留,以便您在重新安装Db2(即在其他版本中)后手动编目。