创建IQ数据库是使用CREATE DATABASE语句进行的。在创建数据库之前一定要认真规划,一旦创建完毕,有很多数据库属性是不能再修改的!在IQ 15环境下建库之前一定要认真考虑如下一些因素:
1.确定IQ数据库是Simplex还是Multplex;如果是Simplex,那么日后是否打算改变到Multiplex。
如果采用Simplex,并且日后不会考虑Mulitplex,那么可以采用Raw LV或PV作为IQ数据库Main Store和Temp Store的存储设备。
如果采用Multiplex,那么必须采用PV作为IQ数据库Main Store和Temp Store的存储设备。
如果目前虽采用Simplex,但日后会改变到Mulitplex,建议采用PV作为IQ数据库Main Store和Temp Store的存储设备。这样可以极大减少日后改变到Multiplex的代价。
2.确定IQ数据的字符集
如果采用与ASE相同的ISO_1字符集,那么在建库时COLLATION子句一定要使用'ISO_BINENG’,不要使用’ISO_1’。具体原因可以参见如下地址:
如果使用中文字符集,那么在建库时COLLATION子句建议使用'936ZHO’。
3.确定IQ PAGE SIZE和PAGE SIZE
IQ PAGE SIZE子句用来指定存放IQ数据页的尺寸,在64bit平台上建议最小值是128K(即IQ PAGE SIZE 131072)。对于更大的IQ数据库,使用大一些的IQ PAGE SIZE(比如256K)会提高LOAD和查询的性能,不过要求更多的内存资源。
PAGE SIZE子句用来指定存放元数据的Catalog DB的页尺寸,一般为缺省值4K(4096)。
4.确定表中数据是否区分大小写
如果数据区分大小写,那么在CREATE DATABASE语句中指定CASE RESPECT 子句 ;否则指定为CASE IGNORE。建议使用CASE RESPECT。
5.SYBASE建议不要在IQ_SYSTEM_MAIN上创建用户对象(表、索引等)
CREATE DATABASE语句会在'IQ PATH'子句指定的设备上创建IQ_SYSTEM_MAIN dbspace。IQ 15开始,这个dbspace留作系统使用,不要在其上创建和用户对象。为了实现这一目的,可以参考如下做法:
A. 创建用户DBSPACEs(可以一个或多个),例如:
CREATE DBSPACE MP2_USER_MAIN USING
FILE MP2_USER_MAIN_FILE01 'raw device or symbol link' ,
FILE MP2_USER_MAIN_FILE02 'raw device or symbol link' ,
FILE MP2_USER_MAIN_FILE03 'raw device or symbol link' ;
B. 回收用户在IQ_SYSTEM_MAIN上创建数据库对象的权限:
REVOKE CREATE ON IQ_SYSTEM_MAIN FROM PUBLIC
C. 授予用户在用户DBSPACEs上创建数据库对象的权限,例如:
GRANT CREATE ON MP2_USER_MAIN TO mp2user;
D. 设置用户缺省的dbspace:
SET OPTION mp2user.DEFAULT_DBSPACE='MP2_USER_MAIN';
阅读(2775) | 评论(0) | 转发(0) |