Informix知识集锦

如何使用dbschema 工具卸出数据库的结构
例如:
1)导出数据库中所有的表结构到文件db.sql
$>dbschema -d your_database -t all db.sql
2)导出数据库中所有的存储过程到文件db.sql
$>dbschema -d your_database -f all db.sql
3)导出数据库中的所有对象(包含表,存储过程,触发器……)到文件db.sql
$>dbschema -d your_database db.sql
4)导出数据库中一个表的结构到文件db.sql
$>dbschema -d your_database_name -t your_table_name db.sql
5)导出一个存储过程定义到文件db.sql
$>dbschema -d your_database_name -f your_procedure_name db.sql
6)如果导出更多的表的信息(EXTENT...)
$>dbschema -d your_database_name -ss db.sql
7)导出数据库中对用户或角色的授权信息
$>dbschema -d your_database_name -p all
$>dbschema -d your_database_name -r all
8)导出数据库中的同义词
$>dbschema -d your_database_name -s all
//*****************************************************************************
查询出一个数据库中所有的用户表
select * from systables
where tabid > 99
// tabname 存放表的名字
// tabtype 存放表的类型 T=表,E=外部表,V=视图......
//SQL参考指南 nrows 表中的行数 ncols 表中的列数
//*****************************************************************************
onstat -d  看一看你的数据库空间是怎么分配的

如果你在做dbimport的时候没有指定参数,那么会把整个数据库建在rootdbs上。
如果数据库空间规划得比较细的话,应该有专用于装数据的dbspace。
//*****************************************************************************
导出数据
unload to database.txt
select ......
from ...
where ....
导入数据
load from database *.txt insert into tablename
//*****************************************************************************
提交建表脚本 dbaccess db_das(数据库名) - < 建表脚本 生成所需要的表
dbaccess db_das db.sql
db.sql是用dbschema -d db_das -t all db.sql导出的
//*****************************************************************************
同时生成dbspace 和 块 

onspaces -c -d dbspaces1 -p D:/IFMXDATA/ol_chinaren5/ol_chinaren5_dat.000 -o 0 -s 200000

本例中,生成新的dbspace名为dbspace1及其初始块,
分配在磁盘D:/IFMXDATA/ol_chinaren5/ol_chinaren5_dat.000中,
偏移量为o.初始长度为200MB(200000KB)。
//*****************************************************************************
用onspaces命令在dbspace中增加块

onspaces  -a dbspace1 -p D:/IFMXDATA/ol_chinaren5/ol_chinaren5_dat.000 -o 200000 -s 50000
作用:在D:/IFMXDATA/ol_chinaren5/ol_chinaren5_dat.000 中为dbspace1增加50M空间
-o 偏移量 必须为现在已有空间的大小s

//*****************************************************************************
为数据库空间,blob空间或sb空间分配NTFS文件空间

进入要存放文件空间的目录D:/IFMXDATA/ol_chinaren5

执行命令 copy nul my_chunk_dat.000
就新建了一个my_chunk_dat.000 大小为0的文件
然后用onspaces 为空间扩展大小 及分配dbspace

//*****************************************************************************
删除dbspace

onspaces -d dbspace1
删除名为dbspace1的dbspace 空间

//*****************************************************************************

dbimport 导入数据

运行数据库服务器dos界面  输入 oninit
在运行一个数据库服务器dos界面 
直接输入:dbexport -o d:/informix  db_das
                     <保存的目录> 要导出的数据库
或者:dbexport -c -o d:/informix db_das
导出完成 将提示 dbexport completed! 导出过程可能有点慢(等待)
导出完成后将在 <保存的目录> 下产生一个文件夹 db_das.exp(导出的数据库名.exp)

导入数据库
输入:dbimport -c -i   d:/informix         db_das
                    <db_das.exp所在的目录>    导入的数据库名
或者:dbimport -c -X -i d:/informix/temp db_das -d practice
-c 指示dbimport完成导入, 即使它遇到某些非致命错误
-X 识别字符字段中的hex二进制数据
-i 指定磁盘上database.exp目录的完整路径名,目录名应该与数据库名相同
-d 指定创建数据库的数据空间

将数据库改名  先更改.exp目录名称,在更改.sql模式文件名称
目录名称必须和模式文件名称相同

导入完成 会有提示!

//*****************************************************************************

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值