学习db2过程中的一些记录
学习db2过程中的一些记录实现:在客户端远程连接服务器端的db2(db2之间的互连)本文假定如下:客户端为windows/linux/unix,客户端也已经安装了db2或者客户端服务器端为windows/linux/unix客户端ip:192.168.42.147,服务器端ip为192.168.42.102步骤:在客户端建立服务器端数据库的节点在客户端命令行执行Db2 catalog tcpip node test remote 192.168.42.102 server 50000注:test为在客户端定义的节点,名字可以任意192.168.42.102为客户端的ip50000为DB2使用的端口查找服务器端DB2使用的端口,如果服务器端为linux,可以访问/etc/services文件,如果你的实例名为db2inst1,找到如下行db2inst1 50000/tcp如果服务器端为windows,查看X:/WINNT/System32/drivers/etc/services绑定节点和客户端的数据库执行下面的命令db2 catalog db coshine at node test注:coshine为服务器端中你想要连接的数据库名Test就是步骤一种定义的节点使绑定生效执行db2 terminate设定客户端db2codepage(代码页设置)即字符编码先在服务器端查询db2codepage,执行db2set –all[i] DB2_EXTENDED_OPTIMIZATION=ON[i] DB2_DISABLE_FLUSH_LOG=ON[i] AUTOSTART=YES[i] DB2_STRIPED_CONTAINERS=ON[i] DB2_HASH_JOIN=Y[i] DB2COMM=tcpip[i] DB2CODEPAGE=819[i] DB2_PARALLEL_IO=*可以看到服务器端的DB2CODEPAGE为819,所以客户端也必须设置为这个数字执行db2set db2codepage=819进行连接执行db2 connect to coshine user user_name using password注释Db2codepage:即db2数据库的编码方式db2codepage=1386(简体中文)db2country=86(中国)一个数据库一旦建立,他的代码页就没有办法改,db2set DB2CODEPAGE=1386只能改变代码页环境,不能改变数据库的代码页如果不能连接:检查如下是否正确确保可以ping通服务器端:ping 192.168.42.102确保服务器端的db2已经启动:db2start确保客户端DB2COMM设置为tcpip先查看db2comm设置:db2set –all如果没有设置这个注册表,执行db2set db2comm=tcpip将SVCENAME设置成/etc/services中的端口号或者服务名了吗?执行db2 get dbm cfg查看,找到SVCENAME,如果当前值不是服务器端的端口号或者服务名,进行更新设置执行:db2 update dbm cfg SVCENAME db2inst1注:db2inst1为服务名,这个在/etc/services文件中db2inst1 50000/tcp一致DB2数据库基本操作指令30条1.查看本地节点目录命令窗口中输入:db2 list node directory2.编目一个TCP/IP节点命令窗口:db2 catalog tcpip node remote server ostype3.取消节点编目db2 uncatalog node4.查看系统数据库目录db2 list database directory5.查看本地数据库目录db2 list database directory on <盘符>在本地数据库目录中有而系统数据库目录中没有的数据库不能访问,可以在控制中心中选中 <数据库> 右键单击选择添加,然后输入需要添加的数据库名称或者点击刷新按钮选择数据库,加入数据库后即可以访问。6.编目数据库db2 catalog database as at node7.取消数据库编目db2 uncatalog database8.测试远程数据库的连接db2 connect to user using9.任何用户均可通过设置CurrentSchema专用寄存器为特定的数据库连接设置默认模式,初始默认值为当前会话用户的权限ID。set schema =可以由用户交互式的使用,也可在应用程序中使用,如果用DynamicrulesBind选项绑定包,这个语句就没有作用。此语句不在事务控制之下。10.代码页的设置在创建数据库时设置字符集create database using codeset territory例: create database dbtest using codeset IBM-437 territory US也可以设置整个数据库的代码页,在win2000/NT/xp中,在我的电脑--> 属性--> 高级--> 环境变量中添加变量DB2CODEPAGE = ,例:DB2CODEPAGE = 437 或 DB2CODEPAGE = 1386。或者在IBM DB2命令窗口输入db2set DB2CODEPAGE=1386,设置后需要重新启动DB2生效。11.DB2低版本数据到高版本的迁移先将低版本数据备份使用恢复功能导入高版本数据库,然后在命令窗口输入db2 migrate database 。12.表名或模式中含有引号时访问表命令窗口:db2 select * from \ "tabschema\ ".\ "tabname\ "命令行处理器:db2=> select * from "tabschema ". "tabname "13.导出数据库的表结构生成DDL文件命令窗口:db2look -d -e -c -o14.执行脚本文件命令窗口:db2 -tvf15.代码页的转换16.获取当前DB2的版本 select * from sysibm.sysversions17.DB2表的字段的修改限制?只能修改VARCHAR2类型的并且只能增加不能减少alter table alter column set data type varchar (SIZE)18.如何查看表的结构?describe table or describe select * from .19.如何快速清除一个大表?ALTER TABLE TABLE_NAME ACTIVE NOT LOGGED INITALLY WITH EMPTY TABLE20.如何查看数据库的存储过程?SELECT * FROM SYSCAT.PROCEDURES21.如何查看表的约束?SELECT * FROM SYSCAT.CHECKS WHERE TABNAME =22.如何查看表的引用完整约束?SELECT * FROM SYSCAT.REFERENCES WHERE TABNAME =23.如何知道BUFFERPOOLS状况?select * from SYSCAT.BUFFERPOOLS24.如何在命令行下查看修改实例和数据库配置参数?查看实例配置参数:db2 get dbm cfg修改实例配置参数:db2 update dbm cfg using 参数名 新值查看数据库配置参数:db2 get db cfg上一个:DB2中的57011问题
下一个:DB2导出DEL文件的分隔符问题
- 更多DB2疑问解答:
- sql语句 从DB2移动到其他数据库
- DB2 character类型更新报错
- db2 怎么查看执行的sql语句需要多少系统临时表空间?
- db2数据库的table表里,一money字段中的数据显示为:56000,00 本人想要用sql语句将它修改为56,000,000
- DB2导出表结构,能不能只导出指定的表结构。求大神指教,给出命令哈
- DB2数据库,增加数据表空间容量需要重启数据库吗?
- cognos连接db2,为什么启动不了服务啊, 连接Oracle可以启动服务。。
- PostgreSQL对比DB2
- db2如何查看编写好的存储过程?
- db2数值截取
- 谁知道关于DB2怎么看系统日志,归档日志的位置。并且怎么修改日志呢?
- db2怎样重组表结构?
- 求一本【牛新庄的DB2运维教程】?
- db2 的 SECADM权限 是干什么的
- DB2怎么删除表空间所以数据