DB2 11基础:概述

本文概述了IBM DB2 11.1 LUW的基础知识,包括DB2的各种版本、组件、数据库安装、许可证设置、多文化支持、安全性模型。详细解释了DB2副本、实例、数据库的关系,以及存储模型,如数据库分区、缓存池、表空间和容器等。旨在为后续的DB2部署和开发提供基础认知。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DB2 11基础:概述

1-写在前面

本文参照IBM官方文档,学习总结下DB2 11.1 LUW一些基本概念和原理,补充下自己认为比较重要的基础知识。
官方文档请参照:IBM DB2 11.1 LUW官方文档

2-产品概述

2.1-DB2 11各种版本说明

DB2 Advanced Enterprise Server Edition      高级企业版,最强的版本,无内存处理器数据库大小限制,所有功能
此外支持各种工具,高级特性如按列组织的表、内存中数据库、数据压缩、工作负载管理、复制和分布式分区功能

DB2 Advanced Workgroup Server Editon 高级工作组版本,与上相比,对内存和处理器进行限制

DB2 Enterprise Server Edition  企业服务器版,无内存处理器数据库大小限制,但不支持高级特性如分区数据库
DB2 Workgroup Server Edition   工作组版本,与上相比有限制

DB2 Express-C  免费版本,2个CPU和16GB内存,无数据库大小限制,无高级特性
DB2 Developer Edition  开发者版本,功能无限制,但是只能授权是单个应用开发者使用,无法用于生产系统

2.2-DB2 组件

DB2 pureScale   高可用性解决方案,分布式数据库系统,数据库集群系统(共享数据)
DB2 Connect     Linux、UNIX和Windows操作系统应用程序连接IBM大型机数据库组件

IBM SDK for Java IBM发布的Java SDK组件,遵循Java规范,同时支持独有的DB2开发特性
默认DB2没有安装JDK,默认安装JRE,支持UDF、存储过程等IBM独有特性,Oracle SDK支持基本开发

IBM Data Server Driver  驱动组件,提供JDBC、SQLJ,ODBC,CLI功能,用于DB2数据库应用开发
IBM Data Server Runtime Client  远程操作数据库客户端组件,但不包含GUI工具
IBM Data Server Client 包含上述所有功能,支持应用程序开发,管理和配置数据库
IBM Data Studio  图形化DB2数据库管理和开发集成平台

3-数据库基础

3.1 安装DB2

DB2 数据库系统由DB2 服务器和IBM Data Server Client组成,服务器是关系数据库核心,负责管理数据;Client是运行
服务器命令、执行SQL语句的应用程序,提供连接和访问数据库的接口。

安装方法:图形向导、响应文件、有效内容文件,推荐前两种方式

典型安装需要的最小配置:磁盘2GB左右(不含数据)、内存最低512MB(建议最少1GB)

Linux下安装DB2数据库产品目录结构:
非root用户安装,无法选择位置,程序和实例文件都位于$HOME/sqllib目录;
以下是root用户缺省安装的目录以及重要DB2对象位置
DB2 对象位置
DAS 主目录home/dasusr1
DAS 信息home/dasusr1/das
数据库配置文件SQLDBCONhome/db2inst1/db2inst1/NODE0000/SQL00001
数据库目录home/db2inst1/db2inst1/NODE0000/SQL00001
数据库管理器配置文件db2systmhome/db2inst1/sqllib
DB2 命令/opt/IBM/db2/V11.1/bin
DB2 错误消息文件(db2diag日志)home/db2inst1/sqllib/db2dump
DB2 安装路径缺省值为 /opt/IBM/db2/V11.1
事件监视器数据目录home/db2inst1/db2inst1/NODE0000/SQL00001/db2event
事务日志文件目录home/db2inst1/db2inst1/NODE0000/SQL00001/LOGSTREAM0000
安装日志文件db2install.history /opt/IBM/db2/V11.1/install/logs
实例主目录home/db2inst1
实例信息home/db2inst1/sqllib
实例的本地数据库目录home/db2inst1/db2inst1/NODE0000/sqldbdir
分区数据库环境文件db2nodes.cfghome/db2inst1/sqllib
系统数据库目录home/db2inst1/sqllib/sqldbdir

3.2 许可证设置

#/home/db2inst1/sqllib/adm/db2licm -l  查看当前许可证
#/home/db2inst1/sqllib/adm/db2licm -a <filename.lic>  添加购买的许可证
#/home/db2inst1/sqllib/adm/db2licm -r 

3.3 多文化支持与字符集

创建数据库一般需要指定字符集、地域以及整理;
代码页:Code Pagecodeset 数据库代码页(字符集)确定数据库可以存储的合法字符,代码页是一个指定给已命名代码集的数值。
    例如:数据库代码页819,只能存储英语和西欧字符。从V19.5开始,缺省为Unicode(这里指的是字符集)

地域:territoy,指明数据库应用地域,提供特定于区域的支持,例如一般不同地域的时间日期、金额数字等地方表示方法
      例如:中国的地域标识CN

整理校对:collation,比较不好翻译,其实维基上是指排序规则,用于字符串数据比较

本地环境:locale,操作系统本身语言环境,以及DB2系统本身语言环境

3.4 安全性模型

采用两种方式,认证(authentication)和授权(authorization)
对数据库系统本身的访问是由外部工具提供(例如操作系统),这个采用认证方式;
对数据库系统内的数据访问等由数据库管理器管理,采用授权方式;

认证:系统验证用户身份过程,提供基于操作系统认证、Kerberos和轻量级目录访问协议LDAP认证;
      认证过程生成一个DB2授权标识。
授权:认证之后,数据库管理器确定用户是否能访问DB2数据或资源

权限分类:
- 系统级别权限:
    系统管理员(SYSADM)、系统控制(SYSCTRL)、系统维护(SYSMAINT)和系统监视(SYSMON)
- 数据库级别权限:
    安全性管理员 (SECADM)、数据库管理员 (DBADM)、数据库访问控制 (ACCESSCTRL)、数据库的数据访问 (DATAACCESS)、
    SQL 管理员 (SQLADM)、工作负载管理的管理员 (WLMADM) 以及说明(EXPLAIN)权限提供了数据库内的控制权。
    其他数据库权限包括 LOAD(能够将数据装入到表中)和 CONNECT(能够连接至数据库)

- 对象级别权限:对象级别权限涉及对对象执行操作时检查特权,例如指定表格的select权限

- 基于内容的权限:控制对数据内容的访问权限,可以是部分内容
    视图来控制特定用户可以读取一个表中的哪些列或行
    基于标号的访问控制 (LBAC) 确定哪些用户对各行和各列具有读写访问权。


角色:一项或多项特权组合一起的数据库对象,一组特权的集合

4.数据库管理

4.1 重要概念

  • DB2副本:V9及以上DB2版本,支持在同一台计算机安装和运行多个DB2副本,副本指的是同一台计算机上的特定位置安装的一个或多个DB2数据库产品,因此同一台机器可以有不同版本的DB2,也可以多次安装同一个版本的DB2的不同修订本版(相同版本,路径不同也可以)

  • 实例:逻辑数据库管理器环境,一组内存和访问数据的后台进程组成,同一台服务器可以创建多个实例,也就是一个副本可以创建多个实例同时运行,不同副本之间的实例名也不能相同;

  • 数据库:存储数据信息的文件,包含一组用来存储、管理和访问数据的对象

  • 数据库分区:亦称为 节点或者数据库节点,分区是数据库的一部分,由自己的数据卷、索引、配置文件和事务日志组成。

  • 缓存池:数据库管理器分配给数据库的用于高速缓存表或者索引数据的主存储器区域,每个DB2数据库都必须有一个缓冲池。

  • 表空间:存储结构,包含表、索引、大对象和长型数据,用来将数据库中的数据组织成与数据在系统上的存储位置相关的逻辑存储器分组。表空间存储在数据库分区组中。

  • 容器:物理存储设备的管理单位,可以是目录名、设备名或文件名,表空间由一个或多个容器组成。

  • 存储器组:可存储数据的存储器路径的指定集合,只有自动存储器表空间才能使用存储器组,一个表空间只能与一个存储器组相关联;一个表空间可以和多个表空间关联;

  • 数据库分区:数据库扩展到多个分区或者节点,该节点可以是不同服务器上,DB2的数据库分区基于无共享体系结构的,每个分区管理数据库数据的一个部分。

  • 编目(catalog),在客户端登记数据库连接信息,包括节点目录和数据库目录,只有登记该目录,客户端才能访问(DB2安装时,一般同时安装好客户端组件,服务器上也有,因为服务器也需要连接实例才能管理数据库);编目文件损坏,客户端也无法正常访问数据库;

4.2 副本、实例、数据库关系

单台服务器可以安装多个DB2版本,称之为副本;
单个副本可以创建多个数据库实例(数据库管理器);
单个数据库实例创建多个数据库;
单台服务器只能创建一个DAS

DAS:数据库管理服务器,服务器的一个特别组件,9.7后不推荐使用,在使用部分IBM提供数据库工具需要;
    现在IBM推荐使用SSH方式对数据库进行远程管理,IBM Data Studio等图形管理工具也支持SSH方式管理;

4.3 存储模型

分为逻辑存储和物理存储模型,下面的箭头表示:A-->B ,表示A是建立的B上,由多个B组成。

物理存储模型:
容器、系统块、存储器组 是物理存储的概念
多个裸设备->联合RAID->划分LUN->操作系统识别LUN->物理存储设备(例如硬盘)
物理存储设备(对主机来说是物理设备)->物理分区->格式化文件系统->对主机来说,逻辑设备(Volume卷组)->系统块和容器

逻辑存储结构:数据库->表空间-》容器-》extend块-》页

5.总结

本文简单总结了下官方文档的一些基本知识和概念,关键是对DB2有个初步的认识,方便后续的部署和开发。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值