通过开始菜单找到“DB2命令窗口(Administrator)”,打开之后运行“db2sampl”,创建样本数据库,然后可以“db2 connect to sample”连接到sample数据库中,对各种表(可以通过db2 list tables查看到所有表)开始 *** 作。
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
不知道 你要问什么~~ 你的用于 *** 作的Administrator用户没有 *** 作数据库的权限,你得改用有权限的用户 *** 作,或者用 DB2安装服务器的 system用户登录来 *** 作 (system用户是DB2最高权限用户)
windows用System用户登录的方法是:
1从>
C:\Documents and Settings\Administrator>db2 SQL1096N
SQL1096N 对于此节点类型,该命令无效。
说明:
在不支持该命令的节点上发出了命令,或者发现对此节点类型设置的系统环境不正确。例如,在客户机节点上数据库作为 LOCAL 来编目。
无法处理该命令。
用户响应:
验证对于该节点类型,命令和参数是否正确。还要验证处理命令所在的环境是否正确。重新提交该命令。
你重新建个实例试试。
1 首先在 SQL Server 服务器级别,创建登陆帐户(create login)
--创建登陆帐户(create login)
create login dba with password='abcd1234@', default_database=mydb
登陆帐户名为:“dba”,登陆密码:abcd1234@”,默认连接到的数据库:“mydb”。 这时候,dba 帐户就可以连接到 SQL Server 服务器上了。但是此时还不能 访问数据库中的对象(严格的说,此时 dba 帐户默认是 guest 数据库用户身份, 可以访问 guest 能够访问的数据库对象)。
要使 dba 帐户能够在 mydb 数据库中访问自己需要的对象, 需要在数据库 mydb 中建立一个“数据库用户”,赋予这个“数据库用户” 某些访问权限,并且把登陆帐户“dba” 和这个“数据库用户” 映射起来。 习惯上,“数据库用户” 的名字和 “登陆帐户”的名字相同,即:“dba”。 创建“数据库用户”和建立映射关系只需要一步即可完成:
2 创建数据库用户(create user):
--为登陆账户创建数据库用户(create user),在mydb数据库中的security中的user下可以找到新创建的dba
create user dba for login dba with default_schema=dbo
并指定数据库用户“dba” 的默认 schema 是“dbo”。这意味着 用户“dba” 在执行“select from t”,实际上执行的是 “select from dbot”。
3 通过加入数据库角色,赋予数据库用户“dba”权限:
--通过加入数据库角色,赋予数据库用户“db_owner”权限
exec sp_addrolemember 'db_owner', 'dba'
此时,dba 就可以全权管理数据库 mydb 中的对象了。
如果想让 SQL Server 登陆帐户“dba”访问多个数据库,比如 mydb2。 可以让 sa 执行下面的语句:
--让 SQL Server 登陆帐户“dba”访问多个数据库
use mydb2
go
create user dba for login dba with default_schema=dbo
go
exec sp_addrolemember 'db_owner', 'dba'
go
此时,dba 就可以有两个数据库 mydb, mydb2 的管理权限了!
查看环境变量 db2set 如果发现db2set中db2codepage不是819,执行以下是代码片段:db2set db2codepage=819db2 create database test05 on /home/db2inst1db2 connect to test05 user db2inst1 using db2 创建对应pagesize大小的缓冲池和表空间以下是代码片段:db2 CREATE Bufferpool USER8 SIZE 1000 PAGESIZE 8Kdb2 CREATE Bufferpool USER16 SIZE 1000 PAGESIZE 16 Kdb2 CREATE Bufferpool USER32 SIZE 1000 PAGESIZE 32 Kdb2stop force ( 可以先用:db2stop 、db2 terminate进行停止)db2startdb2 connect to test05 user db2inst1 using db2db2 "CREATE REGULAR TABLESPACE TS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('FSMS_8K_1') BUFFERPOOL USER8"db2 "CREATE REGULAR TABLESPACE TS_USER16 PAGESIZE 16K MANAGED BY SYSTEM USING ('FSMS_16K_1') BUFFERPOOL USER16"db2 "CREATE REGULAR TABLESPACE TS_USER32 PAGESIZE 32K MANAGED BY SYSTEM USING 创建临时表空间(用于缓冲查询结果或者临时表)以下是代码片段:db2 CREATE Bufferpool TMPBUF8 SIZE 10000 PAGESIZE 8Kdb2 "CREATE TEMPORARY TABLESPACE TempTS_USER8 PAGESIZE 8K MANAGED BY 给相关用户付权限以下是代码片段:db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,LOAD ON DATABASE TO USER EASYMISdb2 GRANT USE OF TABLESPACE TS_USER8 TO easymisdb2 GRANT USE OF TABLESPACE TS_USER16 TO easymisdb2 GRANT USE OF TABLESPACE TS_USER32 TO easymis 开始创建表、创建(这种方式是直接创建表、视图的方式,如果采用db2move的方式,那么则不需要)以下是代码片段:db2 connect to test05 user easymis using easymisdb2 -f dbstructsql >crttablogdb2 -f viewsql >crtviwlog 恢复db2move备份的数据库(备份的过程参见后面的db2move的说明)以下是代码片段:db2move test05 import -l /home/db2inst1/wk/test04db2 -tvf viewsql >crtviewlog #如果脚本是db2look,命令结束符为分号,行结束无特殊符号
select 权限只能针对表,不能针对整个DB,所以建议你写的个脚本,循环对每个表进行权限赋予 db2 grant select on table tabname to user XXX
取消权限可同理进行
db2 revoke select on table tabname from user XXX
以上就是关于如何安装db2数据库全部的内容,包括:如何安装db2数据库、db2常用命令、DB2创建数据库失败是怎么回事等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)