查看数据库实例名:
dbacce ss,然后选择database,在选择select,数据库名@符号后面的即为数据库实例名
新建数据库:
1、使用dbaccess进入informix交互环境
2、选择Database,回车
3、选择Create,回车
4、输入数据库名:uniacctr,回车
5、选择Dbspace(表空间),回车
6、选择跟局数据数据库bureaudb一样的表空间,回车
7、选择Log,回车
8、选择Log,回车(选择日志模式,其他不支持事务)
9、选择Exit,回车
10、选择Create-new-da tabase ,回车。
此时数据库应该已经建立。
查看某个数据库的表空间:
1、使用dbacc ess进入informix交互环境
2、选择Database,回车
3、选择Select,回车
4、选择局数据数据库bu reaudb,回车
5、选择I nfo,回车
6、选择dBSp ace,回车
图中rootdb s位置显示的即是表空间
关键字: dbschema工具:
1)导出数据库中所有的表结构到文件db.sql
$>dbschem a -d your_databa se -t all db.sq l
2)导出数据库中所有的存储过程到文件db.sql
$>dbschema -d your_database -f all db.sql
3)导出数据库中的所有对象(包含表,存储过程,触发器。。。)到文件db.sql $>dbschema -d your_database d b.sql
4)导出数据库中一个表的结构到文件db.sql
$>dbschema -d yo ur_database_name -t your_table_n ame db.sql
5)导出一个存储过程定义到文件db.sql
$>dbschema -d your_database_n ame -f your_proc edure_name db.s ql
6)如果导出更多的表的信息()
$>dbschema -d your_database_name -ss db.sql
7)导出数据库中对用户或角的授权信息
$>dbschema -d yo ur_database_name -p all
$>dbsc hema -d your_dat abase_name -r al l
8)导出数据库中的同义词
$>dbschema -d y our_database_nam e -s all
导出数据库表结构:
dbschema -ddatabase > datab ase.sql
dbschem a -t tablename >tablename.sql
-d表示导出整个数据库的表结构,-t表示导出某一个数据表的表结构。
数据库及数据表导入导出操作:
数据库的导入:
1. 在dbac cess工具环境环境下建立数据库(如:gdxy)
注意:此步操作一定不要直接在dbvis工具上建立,否则后期的脚步总是运行报错,因为在命令行环境下建的数据库里面会有设置数据库的临时空间和lo g 文件。
2.开始导入建表的sq l脚本(如:createtab.sql
在dbaccess工具环境下直接输入dbaccess gdxy < createta b.sql
3.导入表中的数据(通常导出时为txt格式)
一:对于单个表格,可以采用在dbac cess工具环境直接输入:loa d from table1.tx t insert into ta ble1;
二:对于使用unl oad导出的多个文件,可以通过编写命令文件的方式,批量的插入到数据库中。
法一:
第一步:
内容如下
FILE ta DELIMITE R '|' 3;(此处的数字为表各中对应的字段数目)
INSE RT INTO table1;
t DELIMITER '|' 3;(此处的数字为表各中对应的字段数目) INSERT INTO table2;
FILE DELIMI TER '|' 3;(此处的数字为表各中对应的字段数目)
IN SERT INTO table3;
生成好了这个命令文件,则可以通过输入如下的dbload命令批量的导入三个表格数据:
首先进入到导入文件所在的目录,例如c:\bak
dbload -d test(数据库名字) -c c:\t -l aaa(随便输入的日志名字)
即可以将三个文件对应的数据导入到指定的表格中
法二:
第一步:编写导入脚步(l oad.sql)
load from table1.txt DELIMITER '|' INSERT INTO t able1;
load fr DE LIMITER '|' INSE RT INTO table2;
第二步:
在dbaccess工具环境下直接输入dbaccess gdx y < load.sql、
二、数据库的导出
1、单个表格导出:unload to f selec t * from tableNa me
三、导入导出操作
备份表结构
dbs chema -d databas e > database.sql
dbschema -t tablename -d >tablename.sql
-d表示导出整个数据库的表结构,-t表示导出某一个数据表的表结构。
导出数据库dbexport:
dbexport在使用前必须保证该数据库未被别人打开。
在实际环境中,因为很多业务正在运行,应用程序的连接尚未断开,所以不
能直接运行dbexport 。
我一般使用onmod e -ky 关闭数据库,然后再用oninit 启动数据库,立即执行dbexport 数据名,即可将数据导入。
假设数据库名为test ,导出完成后,可以看见dbexport.o ut 的日志文件和一个test.exp 文件夹,这个文件夹里即包含了test 这个库的建库脚本和所有的数据文件。
导入数据库dbimport:
导出来的数据拷贝到测试环境中,注意,如果只拷贝文件过来,d bimport 是不认识的,
我们需要建立一个刚才那样的文件夹即p ,
数据库实例名是什么意思然后在这个子目录的上层运行dbimport ,才能将数据导入。
命令很简单,只需执行dbimport test 即可。
此时要保证你的数据库中没有test 这个库,如果这个库存在,运行dbimport 会导致失败。
倒库之后没日志文件
运行dbimp ort 后,库倒是建起来了,可是日志文件没有了。这是因为dbe xport 将会导致数据库的日志模式丢失,不用担心,我们可以用ontape 这个命令来解决,具体步骤如下:
a. 修改配置文件,在$INFORMIXDI R/etc/onconfig 文件里,将TAPEDEV 设置为/dev/console ,然后重启数据库(我是执行onmod e -ky 和oninit 命令)
b. 运行ondbl og buf test 这个命令意思是先打上一个标志。将数据库日志设置为buffer 模式。
c. 运行ontape -s -L 0 test 即可,在转换数据库模式前,必须先做一个0级备份。
d. 好了,重启数据库,看看数据库日志模式已经改过来了。另外,还有一个onmo nitor 命令,也是相当的有用,命令记不得,就可以用这个东西来实现。JDBC连接inform ix出现的异常:Unable t o load locale ca tegories:
昨天连接时出现了这个异常:
首先连的库为中文库时才会出现这个异常,故可以判断是其unix环境的问题。后来查了下资料,修改jdbc的URl如下:
jdbc:informix-sqli://10.203.68.151:8898/jiang qh:INFORMIXSERVE R=onjz1;user=d cc enter;password=s jjh151;DB_LOCALE=zh_cn.gb;CLIENT_LOCALE=zh_cn.gb;D BDATE=mdy4;
红字为后加的。即解决了此问题
因为环境默认是英文的,所以通过修改U RL来解决这个问题
lin ux操作informix数据库命令
以informix登录,oninit 启动inform ix数据服务器onmode 关闭informix数据服务器
1. dbexport
将数据库以ASCII方式下载。该命令常用于迁移数据库。
如:命令dbe xport -o /inform ix/db_export sto res7,将数据库stores7 下载到
/informix/d b_export/stores7.exp 目录下。
数据库模式文件存放在/informix/d b_export/stores7.exp/stores7.sql下。
dbexport语法:
dbexport [-c ][-d] [-q] [-o] [目标文件选项] da tabase [-ss] [-V]
-c:指示如果没有错误,则输出全部信息。
-q:在标准输出设备上不显示错误信息、警告和所生成的SQL 数据定义语句。-d:仅输出blob 描述符,不输出blob 数据。
-ss:在模式文件中输出特定于服务器的用于创建数据库和表的信息,比如:初始的extent
和附加的exte nt 的大小、上锁方式、表所驻留的dbspace 等信息。
-o:指定数据输出文件的磁盘目录。
-t:指定数据输出文件的备份介质名称。
-b:指定备份介质块大小。
-s:指定备份介质的最大存储量。
-f:用于指定存储在备份介质上的模式文件名。
2. db import
与dbexpor t 配合使用,根据dbexpor t 的输出创建数据库。
如:命令dbimport -c -i/informix/db_exp ort stores7
根据上例中输出结果创建数据库。
dbi mport语法
dbimport[-c] [-q] [输入文件定位选项] [creat e 选项] database
-c 指示dbimport在没有发生致命错误的情况下完成装入工作。
-q 指示在标准输出设备上不显示错误信息和警告。
-X 标识符符字段中的HEX二进制数据。
-i 指定存储ASCII文件和模式文件的磁盘目录,以便dbim port查。
-
t 指定含有A SCII文件和模式文件的磁带设备名。
-b 指定磁带设备块大小。block以KB为单位,该值必须能为所使用的设备接受。-s 指定磁带的最大数据存储量。
-f指定磁盘上模式文件的路径名,以便dbimport查模式文件,并以此为输入建立数据库。
-d 指定用来存储新建数据库的OnLin e数据库空间(dbspace)。如果没有使用-d选项指定dbsp ace,则数据库缺省建立在根db space中。
-l 等价于CR EATEDA TABASE语句的W ITH LOG字句。如果没有使用-l选项,新建数据库不带日志。如果没有使用buffered参数,为装入的数据库建立无缓冲事务日志;如果使用了buffered参数,为装入的数据库建立有缓冲事务日志。
-ansi 为装入的数据库建立ANSI方式兼容的事务日志。
3. dbload
将ASCII 文件中的数据传送到数据库中。
4. dbschem a
将数据库的模式输出到文件中,可用于重建数据库或表。
5. oncheck
数据一致性检查和索引修复工具。常用选项有:
oncheck -ce 检查C hunks 和extents
oncheck -cd 检查数据行
oncheck -ci 检查索引值
oncheck -c I 检查索引值和rowid
o ncheck -cr 检查系统保留页
oncheck -cc检查系统目录表
6. onin it
启动OnLine
7. onlog
显示系统逻辑日志的内容。常用选项有:
onlo g -l 显示已经备份到磁带上的日志信息
8. onmode
改变OnLine 的运行模式,强制检查点动作,切换逻辑日志以及杀死指定的进程。常用选项有:
onmode -k 关闭OnLi ne
onmode -c 强制检查点动作
onmode -l切换逻辑日志到下一个逻辑日志文件
onmode -z 杀死指定的进程
onmode -F释放多余的内存
onmode-a 动态分配内存
9. on params
改变OnLine的逻辑日志和物理日志的配置参数。(添加逻辑日志时使用)
10. onspaces
创建、删除和修改dbspace、chun k工具。
11. ontape
进行逻辑日志的备份,改变数据库日志的状态,执行数据恢复。常用选项有:ontape -a备份所有已满的逻辑日志
ont ape -c 启动连续逻辑日志备份
ontape -s 启动数据备份
ontape -r 启动数据恢复
ontape -s -B | -N | -U 数据库名改变数据库日志的状态
12. onstat
监视数据库的操作。常用选项有:
onst at --help 显示所有信息help
onstat - 显示数据库状态信息
onstat -l 显示物理日志和逻辑日志信息
onstat -g ses显示用户线索信息
onsta t -g sql 显示sql语句
onstat -k 显示锁信息
onstat -x 显示事物信息
onstat -d 显示数据库空间使用信息
onst at -D 显示CHUNK读写信息
onstat -c 显示配置信息
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论