----数据库表空间,用户
db2安装之后,就确定了一个用户,一个db2可以创建多个数据库,一个库可以对应多个表空间,同时必须将表空间的操作权限赋给用户才能使用
----启动、连接数据库
启动数据库实例:db2start
连接数据库:db2 connect to [ticm] user [ticm] using [joyin123]
查看所有连接:db2 list application show detail
断开当前连接:db2 disconnect currentshiy
退出交互模式:db2 quit 数据库连接还未断开,还可以进行sql操作,前提是没有使用connect reset 或者disconnect current
断开与数据库的连接: db2 terminate 相当于disconnect 然后再 quit
连接重置:db2 connect reset
断开所有连接:db2 force application all
断开具体的某个连接 db2 force applicaton (id1,id2,,)
-------创建数据库
创建数据库:db2 create db [dbname]
创建数据库:
DB2 CREATE DATABASE [dbname] AUTOMATIC STORAGE YES ON 'F:\' DBPATH ON 'F:\' USING CODESET GBK TERRITORY CN COLLATE USING SYSTEM PAGESIZE 8192
删除数据库 : db2 drop db [dbname]
列出所有数据库:db2 list database directory
列出所有激活的数据库: db2 list active databases
列出所有数据库配置:先连接, db2 get db cfg
-----------缓冲池
创建缓冲池:db2 create bufferpool [poolname] size 8000 pagesize 32k
---------表空间操作
创建表空间:
db2 create large tablespace [tablespacename] pagesize 32k managed by automatic storage extentsize 32 overhead 10.5 prefetchsize 32 transferrate 0.14 bufferpool[poolname]
给用户赋予对应的表空间操作权限:db2 grant use of tablespace TICM_DATA_TBS TO user ticm with grant option
------节点+编目
创建节点:db2 catalog tcpip node [nodename] remote [server_ip] server [port]
删除数据库节点:db2 uncatalog node [nodename]
查看数据库节点: db2 list node directory
添加数据库编目: db2 catalog db [db_name] as [db_othername] at node [node_name]
删除数据库编目:db2 uncatalog db [db_other_name]
查看数据库编目:db2 list db directory
---------------用户
查看用户信息:SELECT * FROM SYSCAT.DBAUTH
创建用户:安装db2的时候已经创建一个,后期怎么创建不知道
给用户赋权:
DB2 CONNECT TO [dbname]:先连接,表示对谁赋权
DB2 GRANT DBADM, SECADM ON DATABASE TO USER [username]
给用户赋予对应的表空间操作权限:db2 grant use of tablespace TICM_DATA_TBS TO user ticm with grant option
------------本地备份,恢复数据库
备份:db2 backup db [dbname] to d:/
恢复:db2 restore db [dbname] from d:/ to d:
----------在线备份和恢复
----------使用move备份和恢复
导出数据:切换到存储目录:db2move [dbname] export -sn [ticm指定表模式] -u [username] -p [password]
导出数据结构:db2look -d [dbname] -e -a -o [exportfilename] -i [username] -w[password] >2.log
-e: 抽取数据对象ddl,参数不能为空
-a:所有的用户和模式
切换到对应的目录:
表结构导入:db2 -vtf db2look_ticm.sql>1.log
表数据导入:db2move [dbname] load >2.log
---------------------------查看处于暂挂状态的表 对表进行解锁
db2 select tabname from syscat.tables where status='C'
解锁:set integrity for [tablename] no access immediate checked;
-----------------------查看表不活动,以及重置
db2 connect to rmdb11 user rmadmin using rmadmin --使用db2cmd连接数据库
db2 reorgchk update statistics on table user --查询不活动的表,有*的都是
db2 reorg table tablename --重置表
--------------------------------序列的使用
设置表中的序列值从什么开始:ALTER TABLE STTC_DATADICT ALTER COLUMN SEQNO RESTART WITH 1956
序列重置:alter table TAB_NAME alter column GENE_COL_NAME restart with 10; ---当前序列重置为10
创建序列的方法一(不允许修改,按照从1开始没底递增1的顺序添加序列):SEQNO INTEGER NOT NULL ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1)
创建序列方法2(允许给主键赋值,如果不赋值,就按照设置进行递增):SEQNO INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY(START WITH 1 INCREMENT BY 10),
-