﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-风之语-随笔分类-SybaseIQ</title><link>http://www.blogjava.net/gf7/category/7455.html</link><description>&lt;script language="JavaScript" type="text/JavaScript" src="http://union.3721.com/v2/news.js?a=2073&amp;b=1005&amp;p=1007&amp;nt=10400&amp;m=404045" charset="gb2312"&gt; &lt;/script&gt;
</description><language>zh-cn</language><lastBuildDate>Mon, 12 Nov 2007 14:50:01 GMT</lastBuildDate><pubDate>Mon, 12 Nov 2007 14:50:01 GMT</pubDate><ttl>60</ttl><item><title>Sybase IQ for Data Warehouse 培训总结(一)</title><link>http://www.blogjava.net/gf7/archive/2007/11/10/159592.html</link><dc:creator>风</dc:creator><author>风</author><pubDate>Sat, 10 Nov 2007 09:38:00 GMT</pubDate><guid>http://www.blogjava.net/gf7/archive/2007/11/10/159592.html</guid><wfw:comment>http://www.blogjava.net/gf7/comments/159592.html</wfw:comment><comments>http://www.blogjava.net/gf7/archive/2007/11/10/159592.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/gf7/comments/commentRss/159592.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gf7/services/trackbacks/159592.html</trackback:ping><description><![CDATA[Sybase IQ for Data Warehouse 培训总结(一)<br />
*作 者: xuwedo<br />
<div><span style="font-size: 14pt">培训主要内容：Administering Sybase IQ for Data Warehouse (volume 1 &amp;volume 2)</span></div>
<div>&nbsp;</div>
<div style="margin: 0cm 0cm 0pt 21pt; text-indent: -21pt"><span style="font-size: 14pt">一、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">本次培训涉及到以下内容：</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">1．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">产品概述</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">2．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">架构和专业述语</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">3．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">环境变量和安装</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">4．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">怎样创建数据库</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">5．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">设置服务器和数据选项</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">6．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">索引和数据类型</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">7．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">创建表和索引</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">8．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">内存配置</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">9．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">从文件中加载数据</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">10．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">用INSERT语句加载数据</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">11．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">使用Sybase IQ</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">12．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">用户的管理和安全</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">13．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">事务管理和锁</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">14．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">监控和问题解决</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">15．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">管理DBspace 和索引</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">16．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">备份和恢复</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">17．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">的多元架构</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">18．<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">创建一个多元架构的数据库</span></div>
<div>&nbsp;</div>
<div style="margin: 0cm 0cm 0pt 21pt; text-indent: -21pt"><span style="font-size: 14pt">二、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">以下为各部分的详细叙述：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(一)&nbsp;</span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">产品概述</span></div>
<div style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt"><span style="font-size: 14pt">1、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">是一个强大的即席查询服务器。</span></div>
<div style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt"><span style="font-size: 14pt">2、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">用Sybase IQ来分离决策支持系统（DSS，Decision Support System，READER）和在线事务处理系统（OLTP，OnLine Transaction Processing，WRITER）。</span></div>
<div style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt"><span style="font-size: 14pt">3、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">的特点有：<br />
（1）、垂直数据存储和压缩<br />
（2）、优化了所有数据类型的存取方法<br />
（3）、基于位的存储技术<br />
（4）、即席查询优化器<br />
（5）、标准的对外接口<br />
（6）Sybase Central 支持</span></div>
<div style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt"><span style="font-size: 14pt">4、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">不适合做：<br />
（1）、在线事务处理引擎<br />
&nbsp;用Adaptive Server Enterprise代替<br />
（2）、需要实时更新的在线应用服务器<br />
&nbsp;用Adaptive Server Enterprise或Adaptive Server Anywhere代替</span></div>
<div style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt"><span style="font-size: 14pt">5、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase</span><span style="font-size: 14pt">数据库的基本原理：<br />
（1）、列方式的存储，可以减少IO<br />
<span>&nbsp;&nbsp;&nbsp; </span>例如：SELECT COUNT(*) FORM customer WHERE gender = </span><span style="font-size: 14pt">&#8220;</span><span style="font-size: 14pt">m</span><span style="font-size: 14pt">&#8221;</span><span style="font-size: 14pt"><br />
</span><span style="font-size: 14pt">（2）、基于位的索引方式<br />
<span>&nbsp;&nbsp;&nbsp; </span>分为高基数数据（唯一值数量大于1500个）和低基数数据（唯一值数量小于1500个）。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(二)&nbsp;</span><span style="font-size: 14pt">架构和专业述语</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">1、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">平台支持的操作系统版本可以查看Sybase的官方网站，注意：必须有相关的操作系统补丁。</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">2、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ Server</span><span style="font-size: 14pt">是在主机上运行的一个进程。</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">3、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">一个Sybase IQ Server只支持一个Sybase IQ数据库。可以在一个Sybase IQ Server上部署多个数据库，但不推荐。</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">4、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">数据库包括：</span></div>
<div style="margin: 0cm 0cm 0pt 63pt; text-indent: -21pt"><span style="font-size: 14pt">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">三种DBSPACEE：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、Catalog Store(for metadata,扩展名为：.db) </span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28pt"><span style="font-size: 14pt">一个IQ 数据库只能有一个Catalog store DBspace，而且只能创建在一个文件系统上，不能创建在裸设备上。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28pt"><span style="font-size: 14pt">Catalog Store</span><span style="font-size: 14pt">会随着元数据、表、视图、存储过程等对象的增加动态增长。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28pt"><span style="font-size: 14pt">Catalog Store</span><span style="font-size: 14pt">包含了管理一个IQ数据库的所有信息。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28pt"><span style="font-size: 14pt">Catalog Store</span><span style="font-size: 14pt">的逻辑名为SYSTEM。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28pt"><span style="font-size: 14pt">一个数据库中所有表的信息都存储在Catalog Store的系统表中。例如系统表有：SYSIQCOLUMN、SYSIQFILE、 SYSIQINDEX、 SYSIQINFO、 SYSIQTABLE等。可以用语句：<br />
Select * from SYSIQINFO 语句来查看相关信息。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、IQ Store(for data，扩展名为：.iq)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28.5pt"><span style="font-size: 14pt">IQ Store</span><span style="font-size: 14pt">存储了压缩的数据信息，例如索引信息、事务日志、管理分配空间的结构等。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28.5pt"><span style="font-size: 14pt">每一个数据库只有一个IQ Store。一个IQ Store通常情况下包括多个DBspace。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28.5pt"><span style="font-size: 14pt">IQ Store</span><span style="font-size: 14pt">的DBspace可以建立在裸设备或文件系统上。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28.5pt"><span style="font-size: 14pt">IQ Store</span><span style="font-size: 14pt">的逻辑名为：IQ_SYSTEM_MAIN</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28.5pt"><span style="font-size: 14pt">注意：IQ Store的文件系统的扩展名为.iq，裸设备没有扩展名。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、IQ temporary Store(for temporary data,扩展名为：.iqtmp)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28.5pt"><span style="font-size: 14pt">IQ temporary Store</span><span style="font-size: 14pt">是数据库的工作区间。在装入数据时在其中进行排序数据，以建立索引。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28.5pt"><span style="font-size: 14pt">一个数据库只有一个IQ temporary Store。一个IQ temporary Store可以包含多个物理文件。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28.5pt"><span style="font-size: 14pt">IQ temporary Store</span><span style="font-size: 14pt">可以是文件系统或裸设备。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28.5pt"><span style="font-size: 14pt">IQ temporary Store</span><span style="font-size: 14pt">的逻辑名为IQ_SYSTEM_TEMP</span></div>
<div style="margin: 0cm 0cm 0pt 63pt; text-indent: -21pt"><span style="font-size: 14pt">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">三种日志文件：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、IQ Message log</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;IQ</span><span style="font-size: 14pt">数据库的可读日志文件，包括：插入和删除信息、错误信息、状态信息、查询计划等。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;IQ Message Log</span><span style="font-size: 14pt">只能在文件系统中，扩展名为.iqmsg。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">一个数据库只能有一个IQ Message。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、Catalog Store Transaction Log</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp;Catalog Store Transaction Log</span><span style="font-size: 14pt">是Catalog Store的事务日志。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">用来作为必需时的回滚和前滚。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">文件的扩展名为：.log。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">随时间，此文件会越来越大。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、IQ server logs</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">记录每次服务器启动时的信息。每启动一次就会产生一个IQ server log。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">通常在$ASDIR/Logfiles目录下。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;ASIQ_startup_nt.log</span><span style="font-size: 14pt">文件中记录了服务器启动的参数。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;Server_name.00n.srvlog</span><span style="font-size: 14pt">中的n是服务器启动的次数。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">其他信息发送到控制窗口中。</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">5、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">一个DBspace是一个数据库文件的逻辑名。</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">6、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">DBspace</span><span style="font-size: 14pt">可以是分配给Sybase IQ的一个文件系统或裸设备。</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">7、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">一个Sybase IQ 数据库包括多个DBspace。</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">8、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">IQ</span><span style="font-size: 14pt">中的表是指定义在Catalog Store的逻辑表。IQ中有三种表：基本表、本地临时表、全局临时表。</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">9、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">IQ</span><span style="font-size: 14pt">表的每一列最少有一种索引。每当创建新表时，系统会自动为表创建默认索引。</span></div>
<div style="margin: 0cm 0cm 0pt 57pt; text-indent: -36pt"><span style="font-size: 14pt">10、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">IQ</span><span style="font-size: 14pt">中一共有9种索引。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(三)&nbsp;</span><span style="font-size: 14pt">环境变量和安装</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -21pt"><span style="font-size: 14pt">1.<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">对硬盘的空间要求：</span></div>
<div style="margin: 0cm 0cm 0pt 21pt; text-indent: 21pt"><span style="font-size: 14pt">UNIX</span><span style="font-size: 14pt">：不少于800M。</span></div>
<div style="margin: 0cm 0cm 0pt 21pt; text-indent: 21pt"><span style="font-size: 14pt">WINDOWS</span><span style="font-size: 14pt">：不少于375M。</span></div>
<div style="margin: 0cm 0cm 0pt 21pt"><span style="font-size: 14pt">&nbsp;&nbsp; IQ STORE </span><span style="font-size: 14pt">约点总磁盘空间的70%。IQ temporary Store大小约为IQ Store的20%。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt; text-indent: -21pt"><span style="font-size: 14pt">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">对内存的要求：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">虚拟内存=物理内存+磁盘交换分区大小。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">推荐生产环境最小内存不小于1G的物理内存。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">如果虚拟内存过小，会导致服务器失败。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt; text-indent: -21pt"><span style="font-size: 14pt">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">CPU</span><span style="font-size: 14pt">要求：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">颗数越多越好，速度越快越好。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt; text-indent: -21pt"><span style="font-size: 14pt">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">启动IQ Server：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">使用命令：start_asiq [config file] dbname [switchs]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例如：start_asiq @saiqdemo.cfg asiqdemo.db</span></div>
<div style="margin: 0cm 0cm 0pt 63pt; text-indent: -21pt"><span style="font-size: 14pt">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">停止IQ server：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、使用命令：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Dbstop </span><span style="font-size: 14pt">&#8211;</span><span style="font-size: 14pt">c </span><span style="font-size: 14pt">&#8220;</span><span style="font-size: 14pt">uid=DBA; pwd=SQL; eng=server_name; dbn=db_name</span><span style="font-size: 14pt">&#8221;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、使用存储过程：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Stop_asiq</span></div>
<div style="margin: 0cm 0cm 0pt 63pt; text-indent: -21pt"><span style="font-size: 14pt">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">当安装完Sybase IQ后会自动生成一个名为&#8220;Utility</span><span style="font-size: 14pt">&#8221;</span><span style="font-size: 14pt">的数据库，此数据库没有数据，也没有数据文件与之关联（仅为一个util_db.ini文件）。它主要用于以下目的：<br />
（1）、当没有实际的数据库时，用于测试连接。<br />
（2）、用来创建和恢复数据库。<br />
（3）、千万不能删除之。<br />
（4）、此数据库的用户名为：DBA，密码为：SQL。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt; text-indent: -21pt"><span style="font-size: 14pt">l<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">有七种方法可以连接到Sybase IQ：<br />
（1）、ODBC<br />
（2）、JDBC<br />
（3）、OLE_DB<br />
（4）、Sybase Open Client<br />
（5）、用DBISQL<br />
（6）、用Sybase Central。<br />
（7）、用DBISQLC</span></div>
<img src ="http://www.blogjava.net/gf7/aggbug/159592.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gf7/" target="_blank">风</a> 2007-11-10 17:38 <a href="http://www.blogjava.net/gf7/archive/2007/11/10/159592.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Sybase IQ for Data Warehouse 培训总结(二)</title><link>http://www.blogjava.net/gf7/archive/2007/11/10/159591.html</link><dc:creator>风</dc:creator><author>风</author><pubDate>Sat, 10 Nov 2007 09:37:00 GMT</pubDate><guid>http://www.blogjava.net/gf7/archive/2007/11/10/159591.html</guid><wfw:comment>http://www.blogjava.net/gf7/comments/159591.html</wfw:comment><comments>http://www.blogjava.net/gf7/archive/2007/11/10/159591.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/gf7/comments/commentRss/159591.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gf7/services/trackbacks/159591.html</trackback:ping><description><![CDATA[<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">Sybase IQ for Data Warehouse 培训总结(二)<br />
*作 者: xuwedo<br />
<br />
(一)&nbsp;</span><span style="font-size: 14pt">怎样创建数据库</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">1</span><span style="font-size: 14pt">、DBspace是分配到IQ数据库的驱动空间的逻辑名</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">2</span><span style="font-size: 14pt">、一个新IQ数据库最多可以有2047个DBspace。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">3</span><span style="font-size: 14pt">、Sybase的各种类型DBspace的限制：<br />
（1）、Catalog Store最大为1TB。<br />
（2）、IQ Store 和IQ temp Store 在裸设备上没有大小限制，在文件系统中为4TB。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">4</span><span style="font-size: 14pt">、IQ Store 和IQ temp Store可以扩大或从数据库删除。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">5</span><span style="font-size: 14pt">、创建数据库：<br />
CREATE DATABASE full_path db_name[[TRANSACTION] {LOG ON [log_file_name][MIRROR mirror_file_name]}]<br />
IQ PATH iq_file_anem</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[IQ SIZE iq_file_size]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[IQ RESERVE sizeMb]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">TEMPORARY PATH temp_file_name</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[TEMPORARY SIZE temp_db_szie]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[TEMPORARY RESERVE sizeMB]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[MESSAGE PATH message_file_name]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子1：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE DATABASE </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">d:\\mydb\\mydb.db</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">IQ PATH </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">d:\\iqmain\\mydb01.iq</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">IQ SIZE 200</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">TEMPORARY PATH </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">e:\\iqtem\\mydb01.iqtmp</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">TEMPORARY SIZE 200 </span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">IP PAGE SIZE 65536</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">6</span><span style="font-size: 14pt">、可以用Sybase Central创建数据库（在图形环境下）。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">7</span><span style="font-size: 14pt">、可以用sp_iqstatus来查看当前数据库的详细信息。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">8</span><span style="font-size: 14pt">、删除一个DBspace</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、一个IQ store如果存有数据的话，则不能被删除。（可以使用Utility数据库将一个DBspace的数据移动到另一个DBspace中去，再删除）。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、一个IQ temporary Store仅在为空时才可以被删除。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">9</span><span style="font-size: 14pt">、删除一个数据库的语法：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">DROP DATABASE db_filename</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子：DROP DATABASE &#8216;d:\\mydb\\mydb.db</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">10</span><span style="font-size: 14pt">、怎样才能看到所有的DBspace的物理文件名？<br />
用以下命令：Select * from sysqifile </span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(二)&nbsp;</span><span style="font-size: 14pt">设置服务器和数据选项</span></div>
<div style="margin: 0cm 0cm 0pt 90pt; text-indent: -36pt"><span style="font-size: 14pt">1、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">数据库的启动参数均可以写在&#8220;.cfg&#8221;文件中。</span></div>
<div style="margin: 0cm 0cm 0pt 90pt; text-indent: -36pt"><span style="font-size: 14pt">2、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">启动服务器的语法：<br />
start_asiq <em>server-switchs</em> database_file</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">其中：&#8220;<em>server-switchs&#8221;</em>可以为：</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-c </span><span style="font-size: 14pt">：缓存大小，默认windows为32M,Unix为48M。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-gp:Catalog store</span><span style="font-size: 14pt">页大小。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-gm</span><span style="font-size: 14pt">：服务器允许的连接数。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-n</span><span style="font-size: 14pt">：IQ server的名字。如果有两个&#8220;-n&#8221;选项，则第一个是IQ server的名字，第二个&#8220;-n&#8221;为IQ 数据库的名字。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-gc</span><span style="font-size: 14pt">：checkpoint时间间隔。默认为20，推荐为6000。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-gr</span><span style="font-size: 14pt">：最大的恢复时间。默认为2。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-ti</span><span style="font-size: 14pt">：客户端超时时间。默认为4400分钟。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-tl</span><span style="font-size: 14pt">：默认网络超时时间。默认120秒。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-iqmc</span><span style="font-size: 14pt">：主缓存大小，单位：M。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">-iqtc</span><span style="font-size: 14pt">：临时缓存大小，单位：M。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">注：主缓存：临时缓存=2：3</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">在默认情况下，Sybase IQ server使用2338端口。</span></div>
<div style="margin: 0cm 0cm 0pt 90pt; text-indent: -36pt"><span style="font-size: 14pt">3、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">使用SET OPTION命令更变数据库的配置：<br />
（1）、语法：<br />
SET [TEMPORARY] OPTION &nbsp;<br />
[user_id. | PUBLIC.]option_name = [option_value]<br />
其中的&#8220;option_name&#8221;可以是：<br />
Force_No_Scroll_Cursors=&#8216;on&#8217;(默认为&#8220;off&#8221;)禁止缓存用户的查询结果。<br />
Query_Temp_Space_Limit=0(默认为2000M)，设置临时缓存的最大值。0表示不限制。<br />
Public.Query_Plan=&#8216;off&#8217;(默认为&#8220;on&#8221;)禁止将用户的查询计划打印到IQ Message File中，因为查询计划可以会使之大小迅速增加。<br />
例子：<br />
SET OPTION public.Force_NO_Scroll_Cursors=</span><span style="font-size: 14pt">&#8217;</span><span style="font-size: 14pt">no</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 90pt; text-indent: -36pt"><span style="font-size: 14pt">4、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">查看数据库的所有被改动过的（即非默认值）选项，用存储过程：sp_iqcheckoptions。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(三)&nbsp;</span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">索引和数据类型</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">1</span><span style="font-size: 14pt">、Sybase IQ的9种索引类型：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、FP（Fast Projection）此索引为默认的索引形式，在创建表时系统自动设置此索引。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28pt"><span style="font-size: 14pt">特点：用于SELECT、LIKE &#8216;%sys%&#8217;、SUM（A+B）、JOIN操作等语句。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28pt"><span style="font-size: 14pt">此类型索引也是唯一可用于BIT数据类型的索引。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;FP</span><span style="font-size: 14pt">索引可以优化索引，将小于255的唯一值的索引压缩到1字节中，将小于65537的唯一值索引压缩到2字节中。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、LF(Low Fast)基于平衡树的结构，存储唯一值小于1500个的索引，是最快的索引类型。可以用作唯一索引。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">特点：用于=、 ！=、IN、NOT IN查询参数。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;MIN</span><span style="font-size: 14pt">（）、MAX（）、COUNT（）、Group By、JOIN等。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、HNG(High Nongroup)基于位的优化索引，适合于数字索引。用于范围查找和求合计算。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">特点：Rangs、Between、MIN（）、MAX（）、SUM（）、AVG（）等。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（4）、HG(High Group) 基于平衡树的结构，存储唯一值大于1500个的索引，是最快的索引类型。可以用作唯一索引。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">特点：同LF索引的特点。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（5）、CMP(compare)仅用于比较一个表中的两个列的比较。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp; &nbsp;</span><span style="font-size: 14pt">特点：&lt;、 =、 &gt;、 &lt;= 、&gt;=</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（6）、WD(Word)，仅用于索引数据类型为WORD的列。<br />
<span>&nbsp;&nbsp; &nbsp;</span>特点：&#8216;CONTAINS&#8217;、LIKE操作（但没有&#8216;%&#8217;）。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28pt"><span style="font-size: 14pt">例子：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 28pt"><span style="font-size: 14pt">Select count(*) from Customer where address contains(</span><span style="font-size: 14pt">&#8216;Main&#8217;)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（7）、DATE(date)仅用于日期类型的列。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（8）、DTTM(Datetime)仅用于日期时间类型的列。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（9）、TIME(Time)仅用于时间类型的列。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: 21pt"><span style="font-size: 14pt">例子：<br />
Select * from sales where DATAPART(YEAR,dales_dt) = 2007<br />
Select * from sales where sales_dt&gt;=&#8216;2003-01-01 08：00：00&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(四)&nbsp;</span><span style="font-size: 14pt">创建表和索引</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">1</span><span style="font-size: 14pt">、创建表：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子1：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE TABLE employee(</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Emp_id int NOT NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,lname varchar(30) NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,fname varchar(30) NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,salary money NULL)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子2：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE TABLE stores(</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Store_id char(4) NOT NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,store_name varchar(20) NOT NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,store_address varchar(40) NOT NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,UNIQUE(store_id))</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子3：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE TABLE products(</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Product_code char(5) NOT NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,product varchar(40) NOT NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,price money NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">PRIMARY KEY (products_code))</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子4：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE TABLE sales(</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Sales_code char(10) PRIMARY KEY</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,sales_date DATE NOT NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,product_code char(5) NOT NULL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,FOREIGN KEY fk1(product_code) REFERENCES product (product_code))</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子5：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">SELECT * INTO co_residential_customer from customer where 1=2</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">2</span><span style="font-size: 14pt">、用Sybase Central 可以在图形界面下创建表。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">3</span><span style="font-size: 14pt">、删除表：DROP TABLE tablename</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">4</span><span style="font-size: 14pt">、删除表中的所有内容：TRUNCATE TABLE [owner.]table_name</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">5</span><span style="font-size: 14pt">、创建视图，语法：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE VIEW [owner.]view_name[(column-name[,</span><span style="font-size: 14pt">&#8230;</span><span style="font-size: 14pt">])]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">AS select-without-order-by</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[WITH CHECK OPTION]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子1：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE VIEW sd_customer AS SELECT * FROM customer</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">WHERE sheng = </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">SD</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子2：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE VIEW emp_dept </span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">AS SELECT emp_home,emp_fname,dept_name</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">From Employee,Department</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">WHERE Employee.dept_id = Department.dept_id</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">5</span><span style="font-size: 14pt">、用Sybase Central 可以在图形界面下创建视图。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">6</span><span style="font-size: 14pt">、创建索引：<br />
CREATE [UNIQUE] [index-type] INDEX </span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Index_name ON </span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[owner.]table_name (column_name[,</span><span style="font-size: 14pt">&#8230;</span><span style="font-size: 14pt">])</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[{IN | ON} DBSpace_name]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[NOTIFY integer]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[DELIMITED BY </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">separators-string</span><span style="font-size: 14pt">&#8217;</span><span style="font-size: 14pt">]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[LIMIT maxwordsize-integer]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子1：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE HG INDEX </span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Cust_customer_id ON</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Cutomer(customer_id)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子2：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">CREATE CMP INDEX price_compare</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">ON orders(purchase_price,list_cost)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">7</span><span style="font-size: 14pt">、删除索引：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">DROP INDEX [[owner.]tablename.]index_name<br />
</span><span style="font-size: 14pt">例子：<br />
DROP INDEX cust_customer_id</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(五)&nbsp;</span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">内存配置</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">1、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">IQ</span><span style="font-size: 14pt">从单一的一个内存池中分配内存。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">2、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">从操作系统层面来看，IQ Server的内存是由堆组成。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">3、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Buffer</span><span style="font-size: 14pt">：内存中的一块区域，它存储了写入数据库或从数据库中读取的未解压的数据。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">4、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">IQ Page Size</span><span style="font-size: 14pt">：IQ Server中每一个内存页的大小。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">5、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">IQ Page Size/16=BLOCK SIZE</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">6、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">在启动服务器时，可以用参数-c来指定服务器缓存的初始大小。在所有平台中，这个值最大为256M。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">7、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">IQ Buffer</span><span style="font-size: 14pt">有两种类型：<br />
（1）、主Buffer缓存：IQ Store的Buffer。（占总大小的40%）<br />
（2）、临时Buffer：IQ temporary Buffer。（占总大小的60%）</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">8、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">在Sybase IQ server中一个活动的用户大约占用10M内存，一个非活动用户大约占5M内存。</span></div>
<img src ="http://www.blogjava.net/gf7/aggbug/159591.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gf7/" target="_blank">风</a> 2007-11-10 17:37 <a href="http://www.blogjava.net/gf7/archive/2007/11/10/159591.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Sybase IQ for Data Warehouse 培训总结(三)</title><link>http://www.blogjava.net/gf7/archive/2007/11/10/159590.html</link><dc:creator>风</dc:creator><author>风</author><pubDate>Sat, 10 Nov 2007 09:36:00 GMT</pubDate><guid>http://www.blogjava.net/gf7/archive/2007/11/10/159590.html</guid><wfw:comment>http://www.blogjava.net/gf7/comments/159590.html</wfw:comment><comments>http://www.blogjava.net/gf7/archive/2007/11/10/159590.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/gf7/comments/commentRss/159590.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gf7/services/trackbacks/159590.html</trackback:ping><description><![CDATA[<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">作 者: xuwedo<br />
(一)&nbsp;</span><span style="font-size: 14pt">从文件中加载数据</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">1</span><span style="font-size: 14pt">、有三种方法向IQ table中加入数据：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、用LOAD TABLE命令，从命名管道或文件中将数据导入表中。（速度是最快的）</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、用INSERT FROM SELECT 命令，将其他表中的数据加入当前表中。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、用INSERT VALUES命令，&#8220;手动&#8221;地向表中加入数据。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">2</span><span style="font-size: 14pt">、关于数据加载和锁：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、当一个用户正在装载、插入或修改一个表中的数据时，其他用户可以对该表进行查询操作。（原理是：版本控制）</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、多个用户可以并发地执行DML语句，但必须针对不同的表。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、如果多个用户试图修改同一个表，则第一个用户获得DML锁。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">3</span><span style="font-size: 14pt">、从文件中装入数据的例子：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">LOAD TABLE customer(customer_id </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">|</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,cust_type </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">|</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,organization </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">|</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,contact_name </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">|</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,contact_phone </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">|</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,address </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">|</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,city </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">|</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,country </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">\x0a</span><span style="font-size: 14pt">&#8217;</span><span style="font-size: 14pt">)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">FROM </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">/work/data/cutomer1.dat</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">ESCAPES OFF</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">QUOTES OFF;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">4</span><span style="font-size: 14pt">、删除表中的数据有三种方法：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、用DELETE 命令：<br />
DELETE&nbsp;FROM customer</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">WHERE customer_id IN( SELECT cutomer_id FROM customer</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WHERE postno = </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">250001</span><span style="font-size: 14pt">&#8217;</span><span style="font-size: 14pt">)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、用DROP TABLE命令</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、用TRUNCATE TABLE命令</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">5</span><span style="font-size: 14pt">、删除后再增加数据有两种方式：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、插入到删除后留下的空隙中。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、追加到现有表的最后一行后面。（速度再快一些，但要更大的存储空间）</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">由APPEND_LOAD=&#8216;ON&#8217;来控制。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">6</span><span style="font-size: 14pt">、UPDATE 命令：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">UPDATE employee </span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">SET dept_id = 400</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">WHERE emp_id = 111</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(二)&nbsp;</span><span style="font-size: 14pt">用INSERT语句加载数据</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例1：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">INSERT INTO dept_head(name,dept)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">NOTIFY 20</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">SELECT emp_fname ||</span><span style="font-size: 14pt">&#8216; &#8217;||emp_lname&nbsp;AS name</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">,dept_name</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">FROM employee JOIN department</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">ON emp_id = dept_head_id<strong>;</strong></span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><strong><span style="font-size: 14pt">commit</span></strong></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例2：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">INSERT INTO lineitem(shipdate,orderkey)</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><strong><span style="font-size: 14pt">LOCATION</span></strong><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">servername.dbname</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">PACKETSIZE 512</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">{SELECT l_shipdate,l_orderkey FROM lineitem};</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><strong><span style="font-size: 14pt">commit</span></strong></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(三)&nbsp;</span><span style="font-size: 14pt">使用Sybase IQ</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">因为本章节均为图形化操作，比较简单。略</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(四)&nbsp;</span><span style="font-size: 14pt">用户的管理和安全</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -21pt"><span style="font-size: 14pt">1.<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">系统预置的两个组：SYS和PUBLIC组。<br />
想知道系统中共有多少组，用以下命令：<br />
SELECT * FROM Sys.sysgroups</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -21pt"><span style="font-size: 14pt">2.<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">系统管理员的用户名：DBA，默认密码为：SQL</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -21pt"><span style="font-size: 14pt">3.<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">向系统中加入用户有三种方法：<br />
（1）、&#8220;GRANT CONNECT&#8221;命令，<br />
GRANT CONNECT TO&nbsp;userid [，</span><span style="font-size: 14pt">&#8230;</span><span style="font-size: 14pt">]<br />
INDENTIFIED BY password [,</span><span style="font-size: 14pt">&#8230;</span><span style="font-size: 14pt">]<br />
</span><span style="font-size: 14pt">注：更改用户的密码也是上面的命令,这可能导致管理员无意识地改变现有用户的密码，而其目的是增加用户。此操作没有警告提示。<br />
（2）、Sybase Central 向导，图形化操作。<br />
（3）、sp_iqaddlogin存储过程，</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -21pt"><span style="font-size: 14pt">4.<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">与系统中用户管理有关的两个系统表：<br />
IQ_User_Login_Info_Table和IQ_System_Login_Info_Table<br />
如果想查看该系统表中的内容，则可以用以下语句：<br />
SELECT * FROM IQ_User_Login_Info_Table</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -21pt"><span style="font-size: 14pt">5.<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">与管理用户有关的几个存储过程：<br />
sp_iqmodifyadmin<br />
sp_iqaddlogin<br />
sp_iqprocess_login<br />
sp_iqdroplogin</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">sp_iqlistexpiredpasswords<br />
sp_iqlistlockedusers<br />
sp_iqlistpasswordexpirations<br />
sp_iqlocklogin<br />
sp_iqmodifylogin<br />
sp_iqpassword</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(五)&nbsp;</span><span style="font-size: 14pt">事务管理和锁</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">1</span><span style="font-size: 14pt">、与事务有关的几个命令：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、开始一个事务：<br />
BEGIN TRANSACTION [transaction_name]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、提交一个事务：<br />
COMMIT [work]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、回滚一个事务：<br />
ROLLBACK [work]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（4）、在当前事务中建立一个保存点：<br />
SAVEPOINT [savepoint_name]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（5）、回滚到一个保存点：<br />
ROLLBACK TO SAVEPOINT [savepoint_name]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（6）、将改变保存到磁盘上：<br />
CHECKPOINT</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（7）、执行完一条语句后，自动提交：<br />
WITH CHECKPOINT ON</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(六)&nbsp;</span><span style="font-size: 14pt">监控和问题解决</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">1、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">可以在Sybase Central中监控用户</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">2、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">存储过程：sp_iqconnection可以显示用户连接的信息。包括connection_handle，User_ID，最后的请求的时间，最后IQ命令时间等。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">3、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">用drop connection connection_handle可以让服务器主动断开与某用户连接。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">4、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">用sp_iqcontext来显示服务器上执行SQL语句的情况，包括哪个用户正在执行哪条SQL语句，是否提交等信息。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">5、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">将服务器执行SQL情况写入日志：<br />
方法1：<br />
-zr SQL ；表明要收集SQL语句信息<br />
-zo c:\\sqllog.txt ;重定向请求级别信息到文件中<br />
方法2：</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><strong><span style="font-size: 14pt">call</span></strong><span style="font-size: 14pt"> sa_server_option (</span><span style="font-size: 14pt">&#8216;request_level_logging&#8217;&nbsp;, &#8216;SQL&#8217;);<br />
<strong>call</strong> sa_server_option( </span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt"> request_level_log_file </span><span style="font-size: 14pt">&#8217;</span><span style="font-size: 14pt">,</span><span style="font-size: 14pt">&#8217;</span><span style="font-size: 14pt">sqllog.txt</span><span style="font-size: 14pt">&#8217;</span><span style="font-size: 14pt">);</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">关闭将SQL信息写入日志文件中：</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><strong><span style="font-size: 14pt">call</span></strong><span style="font-size: 14pt"> sa_server_option (</span><span style="font-size: 14pt">&#8216;request_level_logging&#8217;&nbsp;, &#8216;&#8217;);<br />
<strong>call</strong> sa_server_option( </span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt"> request_level_log_file </span><span style="font-size: 14pt">&#8217;</span><span style="font-size: 14pt">,NONE);</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">6、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">用sp_iqtransaction查看系统中事务的相关信息。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">7、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">错误处理：</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">（1）、UNIX 下有一脚本：getiqinfo.sh</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">（2）、Windows下为getiqinfo.bat</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">来得到服务器的相关信息，然后将生成的报告发送给Sybase即可。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(七)&nbsp;</span><span style="font-size: 14pt">管理DBspace 和索引</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">1、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">改变DBSPACE的模式或改变DBSPACE的大小：</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">ALTER DBSPACE</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">2、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">卸载一个空的DBSPACE：</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">DROP DBSPACE</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">3、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">报告DBSPACE的一般信息和模式：</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">Sp_iqdbspace</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">4、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">报告DBSPACE中的OBJECTS和它们的大小信息。</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">Sp_dbspaceinfo</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">5、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">将一个DBSPACE中的OBJECTS移动到另一个DBSPACE中：</span></div>
<div style="margin: 0cm 0cm 0pt 63pt"><span style="font-size: 14pt">Sp_iqrelocate</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">6、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">Sp_iqrebuildindex</span><span style="font-size: 14pt">存储过程重新建立某列的索引。</span></div>
<div style="margin: 0cm 0cm 0pt 99pt; text-indent: -36pt"><span style="font-size: 14pt">7、<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 14pt">管理DBspace 和索引的操作均可以在Sybase Central中操作，比较简单。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(八)&nbsp;</span><span style="font-size: 14pt">备份和恢复</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">1</span><span style="font-size: 14pt">、Sybase IQ server有三种备份类型：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、完全备份</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、增量备份</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、完全备份的基础上增量备份</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">注：增量备份和完全备份的基础上增量备份都会对Catalog Store 进行完全备份。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">默认情况下为完全备份。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">2</span><span style="font-size: 14pt">、Sybase IQ server的顺序：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、Catalog&nbsp;Store</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、Transaction log File</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、IQ Store</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">3</span><span style="font-size: 14pt">、当IQ server正在备份时：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、默认情况下操作员必须在现场，挂持接备份介质。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、操作员可以不在场，但必须正确地估算出备份的数据量大小，并且在安装备份设备时，要选&#8220;高级&#8221;安装方可。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">4</span><span style="font-size: 14pt">、备份命令：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">BACKUP DATABASE [CRC ON|OFF]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[Attended ON|OFF]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[BLOCK FACTOR integer]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">[{FULL|INCREMENTAL|INCREMENTAL SINCE FULL}]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">TO </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">archive_device</span><span style="font-size: 14pt">&#8217;</span><span style="font-size: 14pt"> [SIZE # of KB integer]</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例子：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">BACKUP DATABASE TO </span><span style="font-size: 14pt">&#8216;dev/rmt/0n</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">注：BACKUP不支持裸设备</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">5</span><span style="font-size: 14pt">、系统级别的备份：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">如果IQ server运行时进行系统级别的备份，则会导致服务崩溃或丢失数据。所以，必须确定IQ server是停止状态时，方可进行系统级别备份。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">6</span><span style="font-size: 14pt">、备份的恢复：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（1）、必须连接到utility_db数据库后才可以进行恢复操作，并且在恢复数据时不能有用户连接到数据库。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（2）、如果有完全恢复，Catalog Store 和Transaction Log（即.db 和.log文件）必须从目标文件夹下删除。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">（3）、如果为增量恢复，Catalog Store 和Transaction Log（即.db 和.log文件）必须存在于目标文件夹中。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">7</span><span style="font-size: 14pt">、恢复的命令：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">RESTORE DATABASE </span><span style="font-size: 14pt">&#8216;c:\\newdir\\mydb.db</span><span style="font-size: 14pt">&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">FROM </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">c:\\asiq\\backup1&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">FROM </span><span style="font-size: 14pt">&#8216;</span><span style="font-size: 14pt">c:\\asiq\\backup2&#8217;</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">在进行恢复时，必须注意恢复的顺序和备份时的顺序完全一致。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">8</span><span style="font-size: 14pt">、数据库备份后，配置文件和日志文件是没有被备份的，所以如果恢复时要单独对这两种文件进行恢复。配置文件可以直接拷贝即可，但日志文件是不能用原来的.log文件的。<br />
<span>&nbsp;&nbsp; </span>如果恢复到原来的目录中，则不用新建.log文件。如果没有恢复到原目录，则必须用dblog工具手动生成.log文件。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">9</span><span style="font-size: 14pt">、dblog工具的命令语法：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Dblog [option] database_file</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">Option</span><span style="font-size: 14pt">：</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">-t log-name</span><span style="font-size: 14pt">，指定事务log文件名。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">-m mirror-name</span><span style="font-size: 14pt">，设置事务日志镜象名。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">-r</span><span style="font-size: 14pt">，停止事务日志的镜象。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">-o</span><span style="font-size: 14pt">，输出日志信息到文件。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">-q</span><span style="font-size: 14pt">，安静模式，不打印信息。</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">例：dblog </span><span style="font-size: 14pt">&#8211;</span><span style="font-size: 14pt">t demolog.log&nbsp;&nbsp; asiqdemo</span></div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(九)&nbsp;</span><span style="font-size: 14pt">Sybase IQ</span><span style="font-size: 14pt">的多元架构</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt"><img height="443" alt="" src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image002.jpg" width="553" v:shapes="_x0000_i1025" /></span></div>
<div style="margin: 0cm 0cm 0pt 42pt">&nbsp;</div>
<div style="margin: 0cm 0cm 0pt 42pt; text-indent: -33pt"><span style="font-size: 14pt">(十)&nbsp;</span><span style="font-size: 14pt">创建一个多元架构的数据库</span></div>
<div style="margin: 0cm 0cm 0pt 42pt"><span style="font-size: 14pt">在Sybase Central中完成。略。</span></div>
<img src ="http://www.blogjava.net/gf7/aggbug/159590.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gf7/" target="_blank">风</a> 2007-11-10 17:36 <a href="http://www.blogjava.net/gf7/archive/2007/11/10/159590.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>理解SybaseIQ中的内存 </title><link>http://www.blogjava.net/gf7/archive/2007/11/10/159588.html</link><dc:creator>风</dc:creator><author>风</author><pubDate>Sat, 10 Nov 2007 09:33:00 GMT</pubDate><guid>http://www.blogjava.net/gf7/archive/2007/11/10/159588.html</guid><wfw:comment>http://www.blogjava.net/gf7/comments/159588.html</wfw:comment><comments>http://www.blogjava.net/gf7/archive/2007/11/10/159588.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/gf7/comments/commentRss/159588.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gf7/services/trackbacks/159588.html</trackback:ping><description><![CDATA[<p align="left">&nbsp;</p>
<div class="t_msgfont" id="message7351718"><font face="Arial "><font face="Arial ">1.1.</font><br />
</font><font face="黑体 ">内存使用</font><font face="宋体 "><font size="5">对SybaseIQ而言，内存越多越好，一般要求每个服务器的CPU配置内存2GB，数据装载需要动态使用额外的内存，计算使用缓存caches；降低IO的方法是使用大buffer caches；使用超出内存会导致频繁swapping；IQ从操作系统申请内存，从操作系统级别看SybaseIQ的内存为堆内存，所有的内存分配自动进行。IQ使用内存进行以下活动：</font></font><br />
<p align="left">
<p align="left"><font face="Wingdings "><font style="font-size: 14pt">l<br />
</font></font><font face="宋体 "><font style="font-size: 14pt">从磁盘读取数据并执行查询；</font></font></p>
<p>&nbsp;</p>
<p align="left">
<p align="left"><font face="Wingdings "><font style="font-size: 14pt">l<br />
</font></font><font face="宋体 "><font style="font-size: 14pt">从系统平面文件加载时缓冲磁盘数据；</font></font></p>
<p>&nbsp;</p>
<p align="left">
<p align="left"><font face="Wingdings "><font style="font-size: 14pt">l<br />
</font></font><font face="宋体 "><font style="font-size: 14pt">缓冲元数据文件 (Catalog)</font></font></p>
<p>&nbsp;</p>
<p align="left">
<p align="left"><font face="Wingdings "><font style="font-size: 14pt">l<br />
</font></font><font face="宋体 "><font style="font-size: 14pt">管理连接，事务，缓冲区和数据库对象。</font></font></p>
<p>&nbsp;</p>
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="宋体 "><font size="5">一个安装SybaseIQ的数据库服务器的典型内存分布如图所示：包括操作系统其他应用程序内存，服务器内存，额外内存，IQ存储缓存，临时存储缓存。</font></font><br />
<font size="5"><font face="宋体 "></font></font><font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"><img onmousewheel="return imgzoom(this)" onmouseover="attachimginfo(this, 'attach_213302', 1);attachimg(this, 'mouseover')" onclick="attachimg(this, 'click', 'attachments/month_0709/20070914_93d0ade152c5a2def0ac3g0xhcdMFOVX.jpg')" onmouseout="attachimginfo(this, 'attach_213302', 0, event)" alt="" src="http://bbs.chinaunix.net/attachments/month_0709/20070914_93d0ade152c5a2def0ac3g0xhcdMFOVX.jpg" border="0" /><span id="attach_213302" onmouseover="showMenu(this.id, 0, 1)" style="display: none; left: 201px; position: absolute; top: 898px"><img src="http://bbs.chinaunix.net/images/default/attachimg.gif" border="0"  alt="" /></span></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<font face="Times New Roman "><font size="3"></font></font><br />
<br />
<font face="Times New Roman "><font size="5">1.1.1.</font><br />
</font><font face="宋体 "><font size="5">服务器内存</font></font><font size="5"><font face="宋体 ">SybaseIQ服务器进程使用的内存，不同的操作系统平台其使用量存在差异，一般需要30MB。</font></font><br />
<font face="Times New Roman "><font size="5">1.1.2.</font><br />
</font><font face="宋体 "><font size="5">额外内存</font></font><strong><font face="黑体 "><font size="5">元数据缓存</font></font></strong><br />
<font face="宋体 "><font size="5">由数据库启动选项 &#8211;c, -cl, 和 &#8211;ch参数控制使用RAM数量，专门用来作元数据库读写缓存，当数据库对象较多时，建议调大此数据。</font></font><br />
<strong><font face="黑体 "><font size="5">线程内存 </font></font></strong><br />
<font face="宋体 "><font size="5">线程内存在数据库启动时分配给数据库服务器，用于线程的堆栈空间，总的空间数值按照公式&#8220;stack size * IQ 线程数量&#8221;计算，数据库启动参数&#8211;iqtss确定数据库的stack size大小单位KB。启动参数-iqmt指定IQ可以使用的线程数量，最小值是2*num_conn+1，缺省值是：</font></font><br />
<font face="宋体 "><font size="5">60*numCPU+2*num_conn+1</font></font><br />
<font size="5"><strong><font face="黑体 "><font face="宋体 ">&#8220;</font></font></strong><strong><font face="黑体 ">活动</font></strong><strong><font face="黑体 "><font face="宋体 ">&#8221;</font></font></strong><strong><font face="黑体 ">用户内存</font></strong></font><br />
<font face="宋体 "><font size="5">每个Sybase IQ 用户对应一个连接进程，此进程大概需要 10MB空间；活动用户是指到数据库的一个连接或执行的查询命令，连接到数据库而不活动的用户需要更少的内存。</font></font><br />
<strong><font face="黑体 "><font size="5">表版本内存</font></font></strong><br />
<font face="宋体 "><font size="5">表版本内存在SybaseIQ运行时分配，通常这类内存非常小(每个被跟踪的表版本1KB到3KB)，通常为KB到MB，但是当系统中存在成千上万的表版本时，占用空间会比较大。</font></font><br />
<strong><font face="黑体 "><font size="5">数据加载内存</font></font></strong><br />
<font size="5"><font face="宋体 ">SybaseIQ在进行数据加载时，分配内存提供数据加载性能，通过数据库选项LOAD_MEMORY_MB设定，缺省情况为0，表示堆内存的分配不受限制，如果数据加载时需要更多内存，可能导致数据加载耗尽虚拟内存，降低数据加载性能，一般建议设定此选项，其配置值可根据加载数据的表宽进行如下计算：</font></font><br />
<font size="5"><font face="宋体 ">Load_Memory_MB = &lt;表宽字节数&gt; * 10,000 * 45 / 1024 / 1024</font></font><br />
<font face="宋体 "><font size="5">以下语句将数据加载内存设置成300MB：</font></font><br />
<font face="宋体 "><font size="5">SET OPTION PUBLIC.LOAD_MEMORY_MB = 300 </font></font><br />
<font style="font-size: 13pt"></font><br />
<strong><font face="黑体 "><font size="5">数据库备份内存</font></font></strong><br />
<font face="宋体 "><font size="5">数据库备份内存的大小与CPU个数、备份的IQ存储和本地存储的数据库空间个数，BLOCK的交错因子，IQ的BLOCK大小有关系。可以通过如下公式粗略估计：</font></font><br />
<font style="font-size: 13pt"></font><br />
<font size="5"><font face="宋体 ">y = max( 2 * cpu个数, 8 * number_of_main_or_local_dbspaces)</font></font><br />
<font face="宋体 "><font size="5">z = (y * 20 ) * ( block factor * block_size )</font></font><br />
<font size="5"><font face="宋体 ">Z表示的是备份时需要的内存的虚拟估计值，假设如下情况： </font></font><br />
<font face="宋体 "><font size="5">dbspaces = 50</font></font><br />
<font face="宋体 "><font size="5">block factor = 100</font></font><br />
<font face="宋体 "><font size="5">number of cpus = 4</font></font><br />
<font face="宋体 "><font size="5">block_size = 8,192</font></font><br />
<font face="宋体 "><font size="5">采用上面的公式和算法，数据库备份时需要的内存总数是：</font></font><br />
<font size="5"><font face="宋体 ">'y' is max(8, 400) </font><font face="Wingdings "><font face="Wingdings ">&#232;</font></font><font face="宋体 "> y=400</font></font><br />
<font size="5"><font face="宋体 ">'z' is ( 400 * 20 ) * ( 100 * 8,192 ) </font><font face="Wingdings "><font face="Wingdings ">&#232;</font></font><font face="宋体 "> 6.5GB</font></font><br />
<font face="宋体 "><font size="5">备份内存来自操作系统，属于堆内存，当备份操作完成后，内存释放。当空间充足时，唯一可以控制备份内存使用的是块的交错因子，在前面的例子中，如果交错因子变成10， 总的备份内存需求将降低到655MB：</font></font><br />
<font size="5"><font face="宋体 ">( 400 * 20 ) * ( 10 * 8,192 ) </font><font face="Wingdings "><font face="Wingdings ">&#232;</font></font><font face="宋体 "> 655MB</font></font><br />
<font face="宋体 "><font size="5">在磁盘I/O不是瓶颈的情况下，在数据库备份时降低内存将减慢备份数度。数据库备份性能与磁盘子系统I/O的读写块性能一致，为减少I/O的额外开销，备份程序一次I/O中读入连续的块，相应地按照&#8220;块交错因子&#8221;写这些块数据。</font></font><br />
<font face="宋体 "><font size="5">通过&#8220;块交错因子&#8221;可以减少备份内存，增加可用的内存，以此计算数据库备份时需要的总内存量。</font></font><br />
<font face="Times New Roman "><font size="5">1.1.3.</font><br />
</font><font face="宋体 "><font size="5">数据库缓存</font></font><font face="宋体 "><font size="5">数据库缓存是操作系统内存中分配用来保存从数据库中读出或者准备写入数据库的数据。SybaseIQ数据库缓存包括主存储缓存和临时存储缓存。参数设置可以通过数据库选项或者数据库启动配置文件。</font></font><br />
<strong><font face="黑体 "><font size="5">主存储缓存</font></font></strong><br />
<font face="宋体 "><font size="5">用于缓存数据库服务器从IQ存储中读取的数据，供 IQ 数据表空间的数据缓存使用，所有用户均可使用。较大的缓存可以降低磁盘的IO以提升性能，主存储缓存在数据库启动时初始化，缺省配置是16MB，对于大多数应用来说太小，修改此参数配置需要重新启动数据库。一般将IQ服务器可以使用的内存的40％分配给SybaseIQ主存储缓存。</font></font><br />
<strong><font face="黑体 "><font size="5">临时存储缓存</font></font></strong><br />
<font size="5"><font face="宋体 ">SybaseIQ临时存储缓存用于数据查询时的表关联，分组，排序和哈系算法。数据加载时，也需要较多的临时存储缓存，例如HG索引的管理、FP索引加载时的1个字节和2个字节的字典表等。较大的临时存储缓存可以减少内存调度。</font></font><br />
<font face="宋体 "><font size="5">主存储缓存在数据库启动时初始化，缺省配置是12MB，对于大多数应用来说太小，修改此参数配置需要重新启动数据库。一般将IQ服务器可以使用的内存的60％分配给SybaseIQ的临时存储缓存。</font></font></div>
<img src ="http://www.blogjava.net/gf7/aggbug/159588.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gf7/" target="_blank">风</a> 2007-11-10 17:33 <a href="http://www.blogjava.net/gf7/archive/2007/11/10/159588.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Sybase IQ 12.6 的redhat AS4安装 </title><link>http://www.blogjava.net/gf7/archive/2007/11/09/159402.html</link><dc:creator>风</dc:creator><author>风</author><pubDate>Fri, 09 Nov 2007 09:06:00 GMT</pubDate><guid>http://www.blogjava.net/gf7/archive/2007/11/09/159402.html</guid><wfw:comment>http://www.blogjava.net/gf7/comments/159402.html</wfw:comment><comments>http://www.blogjava.net/gf7/archive/2007/11/09/159402.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/gf7/comments/commentRss/159402.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gf7/services/trackbacks/159402.html</trackback:ping><description><![CDATA[<font face="verdana,arial,helvetica" size="1">Sybase IQ 12.6 的redhat AS4安装</font>
<p><font face="verdana, arial, helvetica" size="2"><span class="javascript" id="text4248137" style="font-size: 12px">由于我的iq126解压出来是一个个tgz文件，执行sybinstall.sh安装后会报告复制文件失败。打开sybinstall.sh文件来看看，应该是解压缩文件这个环节出错了，那就先把文件解压出来看看再试一下：<br />
gzip -d *.tgz<br />
sybinstall<br />
好了，一路畅通。<br />
启动测试数据看看有没有什么问题.<br />
start_asiq @asiqdemo.cfg asiqdemo.db<br />
..<br />
启动正常，<br />
stop_asiq<br />
...没有发现server,<br />
再打开stop_asiq看看：<br />
哦原来也是用"ps -ef|.....",有点土吧，居然没找到server，肯定是这个脚本又有错误。修改一下，呵呵，搞定.<br />
"case "$OS_TYPE" in<br />
Linux) if ps -m &gt;/dev/null 2&gt;&amp;1 <br />
then MY_PS="ps -efwm |awk -f $AWK_CMD ps_type=long"<br />
else MY_PS="ps -efw |awk -f $AWK_CMD ps_type=long"<br />
fi<br />
;;"<br />
把第一个ps_type=long改为ps_type=short<br />
[注]我的os为RHEL 4 patch 2</span></font></p>
<img src ="http://www.blogjava.net/gf7/aggbug/159402.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gf7/" target="_blank">风</a> 2007-11-09 17:06 <a href="http://www.blogjava.net/gf7/archive/2007/11/09/159402.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Sybase IQ for Data Warehouse 培训总结(二)</title><link>http://www.blogjava.net/gf7/archive/2007/03/30/107419.html</link><dc:creator>风</dc:creator><author>风</author><pubDate>Fri, 30 Mar 2007 02:10:00 GMT</pubDate><guid>http://www.blogjava.net/gf7/archive/2007/03/30/107419.html</guid><wfw:comment>http://www.blogjava.net/gf7/comments/107419.html</wfw:comment><comments>http://www.blogjava.net/gf7/archive/2007/03/30/107419.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/gf7/comments/commentRss/107419.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/gf7/services/trackbacks/107419.html</trackback:ping><description><![CDATA[
		<p>/*<br />*标 题: Sybase IQ for Data Warehouse 培训总结(二)<br />*作 者: xuwedo<br />*文章属性: 原创<br />*时 间: 2007-03-11<br />*来 源: <a href="http://blog.csdn.net/xuwedo2003/">http://blog.csdn.net/xuwedo2003/</a><br />*链 接: <a href="http://blog.csdn.net/xuwedo2003/">http://blog.csdn.net/xuwedo2003/</a><br />* Copyright (c) 2007<br />* All rights reserved.<br />* 如有转载,请注明作者及本信息<br />* 文件名称: <br />* 文件标识: <br />* 摘    要: Sybase IQ, Data Warehouse<br />* 开始时间: 2007-03-11<br />*<br />* 当前版本: 1.0<br />* 作    者: <a href="mailto:xuwedo2001@sohu.com">xuwedo2001@sohu.com</a><br />* 相关信息: <br />* 完成日期: 2007年3月11日<br />*/<br />正文: </p>
		<p> </p>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -33pt">
				<span style="FONT-SIZE: 14pt">(一) </span>
				<span style="FONT-SIZE: 14pt">怎样创建数据库</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">1</span>
				<span style="FONT-SIZE: 14pt">、DBspace是分配到IQ数据库的驱动空间的逻辑名</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">2</span>
				<span style="FONT-SIZE: 14pt">、一个新IQ数据库最多可以有2047个DBspace。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">3</span>
				<span style="FONT-SIZE: 14pt">、Sybase的各种类型DBspace的限制：<br />（1）、Catalog Store最大为1TB。<br />（2）、IQ Store 和IQ temp Store 在裸设备上没有大小限制，在文件系统中为4TB。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">4</span>
				<span style="FONT-SIZE: 14pt">、IQ Store 和IQ temp Store可以扩大或从数据库删除。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">5</span>
				<span style="FONT-SIZE: 14pt">、创建数据库：<br />CREATE DATABASE full_path db_name[[TRANSACTION] {LOG ON [log_file_name][MIRROR mirror_file_name]}]<br />IQ PATH iq_file_anem</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[IQ SIZE iq_file_size]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[IQ RESERVE sizeMb]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">TEMPORARY PATH temp_file_name</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[TEMPORARY SIZE temp_db_szie]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[TEMPORARY RESERVE sizeMB]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[MESSAGE PATH message_file_name]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子1：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE DATABASE </span>
				<span style="FONT-SIZE: 14pt">‘</span>
				<span style="FONT-SIZE: 14pt">d:\\mydb\\mydb.db</span>
				<span style="FONT-SIZE: 14pt">’</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">IQ PATH </span>
				<span style="FONT-SIZE: 14pt">‘</span>
				<span style="FONT-SIZE: 14pt">d:\\iqmain\\mydb01.iq</span>
				<span style="FONT-SIZE: 14pt">’</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">IQ SIZE 200</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">TEMPORARY PATH </span>
				<span style="FONT-SIZE: 14pt">‘</span>
				<span style="FONT-SIZE: 14pt">e:\\iqtem\\mydb01.iqtmp</span>
				<span style="FONT-SIZE: 14pt">’</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">TEMPORARY SIZE 200 </span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">IP PAGE SIZE 65536</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">6</span>
				<span style="FONT-SIZE: 14pt">、可以用Sybase Central创建数据库（在图形环境下）。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">7</span>
				<span style="FONT-SIZE: 14pt">、可以用sp_iqstatus来查看当前数据库的详细信息。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">8</span>
				<span style="FONT-SIZE: 14pt">、删除一个DBspace</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（1）、一个IQ store如果存有数据的话，则不能被删除。（可以使用Utility数据库将一个DBspace的数据移动到另一个DBspace中去，再删除）。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（2）、一个IQ temporary Store仅在为空时才可以被删除。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">9</span>
				<span style="FONT-SIZE: 14pt">、删除一个数据库的语法：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">DROP DATABASE db_filename</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子：DROP DATABASE ‘d:\\mydb\\mydb.db</span>
				<span style="FONT-SIZE: 14pt">’</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">10</span>
				<span style="FONT-SIZE: 14pt">、怎样才能看到所有的DBspace的物理文件名？<br />用以下命令：Select * from sysqifile </span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -33pt">
				<span style="FONT-SIZE: 14pt">(二) </span>
				<span style="FONT-SIZE: 14pt">设置服务器和数据选项</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 90pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">1、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">数据库的启动参数均可以写在“.cfg”文件中。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 90pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">2、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">启动服务器的语法：<br />start_asiq <em>server-switchs</em> database_file</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">其中：“<em>server-switchs”</em>可以为：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-c </span>
				<span style="FONT-SIZE: 14pt">：缓存大小，默认windows为32M,Unix为48M。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-gp:Catalog store</span>
				<span style="FONT-SIZE: 14pt">页大小。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-gm</span>
				<span style="FONT-SIZE: 14pt">：服务器允许的连接数。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-n</span>
				<span style="FONT-SIZE: 14pt">：IQ server的名字。如果有两个“-n”选项，则第一个是IQ server的名字，第二个“-n”为IQ 数据库的名字。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-gc</span>
				<span style="FONT-SIZE: 14pt">：checkpoint时间间隔。默认为20，推荐为6000。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-gr</span>
				<span style="FONT-SIZE: 14pt">：最大的恢复时间。默认为2。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-ti</span>
				<span style="FONT-SIZE: 14pt">：客户端超时时间。默认为4400分钟。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-tl</span>
				<span style="FONT-SIZE: 14pt">：默认网络超时时间。默认120秒。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-iqmc</span>
				<span style="FONT-SIZE: 14pt">：主缓存大小，单位：M。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">-iqtc</span>
				<span style="FONT-SIZE: 14pt">：临时缓存大小，单位：M。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">注：主缓存：临时缓存=2：3</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 63pt">
				<span style="FONT-SIZE: 14pt">在默认情况下，Sybase IQ server使用2338端口。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 90pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">3、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">使用SET OPTION命令更变数据库的配置：<br />（1）、语法：<br />SET [TEMPORARY] OPTION  <br />[user_id. | PUBLIC.]option_name = [option_value]<br />其中的“option_name”可以是：<br />Force_No_Scroll_Cursors=‘on’(默认为“off”)禁止缓存用户的查询结果。<br />Query_Temp_Space_Limit=0(默认为2000M)，设置临时缓存的最大值。0表示不限制。<br />Public.Query_Plan=‘off’(默认为“on”)禁止将用户的查询计划打印到IQ Message File中，因为查询计划可以会使之大小迅速增加。<br />例子：<br />SET OPTION public.Force_NO_Scroll_Cursors=</span>
				<span style="FONT-SIZE: 14pt">’</span>
				<span style="FONT-SIZE: 14pt">no</span>
				<span style="FONT-SIZE: 14pt">’</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 90pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">4、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">查看数据库的所有被改动过的（即非默认值）选项，用存储过程：sp_iqcheckoptions。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -33pt">
				<span style="FONT-SIZE: 14pt">(三) </span>
				<span style="FONT-SIZE: 14pt">Sybase IQ</span>
				<span style="FONT-SIZE: 14pt">索引和数据类型</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">1</span>
				<span style="FONT-SIZE: 14pt">、Sybase IQ的9种索引类型：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（1）、FP（Fast Projection）此索引为默认的索引形式，在创建表时系统自动设置此索引。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: 28pt">
				<span style="FONT-SIZE: 14pt">特点：用于SELECT、LIKE ‘%sys%’、SUM（A+B）、JOIN操作等语句。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: 28pt">
				<span style="FONT-SIZE: 14pt">此类型索引也是唯一可用于BIT数据类型的索引。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">    FP</span>
				<span style="FONT-SIZE: 14pt">索引可以优化索引，将小于255的唯一值的索引压缩到1字节中，将小于65537的唯一值索引压缩到2字节中。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（2）、LF(Low Fast)基于平衡树的结构，存储唯一值小于1500个的索引，是最快的索引类型。可以用作唯一索引。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">    </span>
				<span style="FONT-SIZE: 14pt">特点：用于=、 ！=、IN、NOT IN查询参数。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">    MIN</span>
				<span style="FONT-SIZE: 14pt">（）、MAX（）、COUNT（）、Group By、JOIN等。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（3）、HNG(High Nongroup)基于位的优化索引，适合于数字索引。用于范围查找和求合计算。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">    </span>
				<span style="FONT-SIZE: 14pt">特点：Rangs、Between、MIN（）、MAX（）、SUM（）、AVG（）等。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（4）、HG(High Group) 基于平衡树的结构，存储唯一值大于1500个的索引，是最快的索引类型。可以用作唯一索引。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">    </span>
				<span style="FONT-SIZE: 14pt">特点：同LF索引的特点。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（5）、CMP(compare)仅用于比较一个表中的两个列的比较。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">    </span>
				<span style="FONT-SIZE: 14pt">特点：&lt;、 =、 &gt;、 &lt;= 、&gt;=</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（6）、WD(Word)，仅用于索引数据类型为WORD的列。<br /><span>    </span>特点：‘CONTAINS’、LIKE操作（但没有‘%’）。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: 28pt">
				<span style="FONT-SIZE: 14pt">例子：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: 28pt">
				<span style="FONT-SIZE: 14pt">Select count(*) from Customer where address contains(</span>
				<span style="FONT-SIZE: 14pt">‘Main’)</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（7）、DATE(date)仅用于日期类型的列。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（8）、DTTM(Datetime)仅用于日期时间类型的列。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">（9）、TIME(Time)仅用于时间类型的列。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: 21pt">
				<span style="FONT-SIZE: 14pt">例子：<br />Select * from sales where DATAPART(YEAR,dales_dt) = 2007<br />Select * from sales where sales_dt&gt;=‘2003-01-01 08：00：00’</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -33pt">
				<span style="FONT-SIZE: 14pt">(四) </span>
				<span style="FONT-SIZE: 14pt">创建表和索引</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">1</span>
				<span style="FONT-SIZE: 14pt">、创建表：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子1：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE TABLE employee(</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">Emp_id int NOT NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,lname varchar(30) NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,fname varchar(30) NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,salary money NULL)</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子2：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE TABLE stores(</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">Store_id char(4) NOT NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,store_name varchar(20) NOT NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,store_address varchar(40) NOT NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,UNIQUE(store_id))</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子3：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE TABLE products(</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">Product_code char(5) NOT NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,product varchar(40) NOT NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,price money NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">PRIMARY KEY (products_code))</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子4：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE TABLE sales(</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">Sales_code char(10) PRIMARY KEY</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,sales_date DATE NOT NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,product_code char(5) NOT NULL</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">,FOREIGN KEY fk1(product_code) REFERENCES product (product_code))</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子5：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">SELECT * INTO co_residential_customer from customer where 1=2</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">2</span>
				<span style="FONT-SIZE: 14pt">、用Sybase Central 可以在图形界面下创建表。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">3</span>
				<span style="FONT-SIZE: 14pt">、删除表：DROP TABLE tablename</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">4</span>
				<span style="FONT-SIZE: 14pt">、删除表中的所有内容：TRUNCATE TABLE [owner.]table_name</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">5</span>
				<span style="FONT-SIZE: 14pt">、创建视图，语法：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE VIEW [owner.]view_name[(column-name[,</span>
				<span style="FONT-SIZE: 14pt">…</span>
				<span style="FONT-SIZE: 14pt">])]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">AS select-without-order-by</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[WITH CHECK OPTION]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子1：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE VIEW sd_customer AS SELECT * FROM customer</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">WHERE sheng = </span>
				<span style="FONT-SIZE: 14pt">‘</span>
				<span style="FONT-SIZE: 14pt">SD</span>
				<span style="FONT-SIZE: 14pt">’</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子2：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE VIEW emp_dept </span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">AS SELECT emp_home,emp_fname,dept_name</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">From Employee,Department</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">WHERE Employee.dept_id = Department.dept_id</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">5</span>
				<span style="FONT-SIZE: 14pt">、用Sybase Central 可以在图形界面下创建视图。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">6</span>
				<span style="FONT-SIZE: 14pt">、创建索引：<br />CREATE [UNIQUE] [index-type] INDEX </span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">Index_name ON </span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[owner.]table_name (column_name[,</span>
				<span style="FONT-SIZE: 14pt">…</span>
				<span style="FONT-SIZE: 14pt">])</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[{IN | ON} DBSpace_name]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[NOTIFY integer]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[DELIMITED BY </span>
				<span style="FONT-SIZE: 14pt">‘</span>
				<span style="FONT-SIZE: 14pt">separators-string</span>
				<span style="FONT-SIZE: 14pt">’</span>
				<span style="FONT-SIZE: 14pt">]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">[LIMIT maxwordsize-integer]</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子1：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE HG INDEX </span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">Cust_customer_id ON</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">Cutomer(customer_id)</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">例子2：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">CREATE CMP INDEX price_compare</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">ON orders(purchase_price,list_cost)</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">7</span>
				<span style="FONT-SIZE: 14pt">、删除索引：</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt">
				<span style="FONT-SIZE: 14pt">DROP INDEX [[owner.]tablename.]index_name<br /></span>
				<span style="FONT-SIZE: 14pt">例子：<br />DROP INDEX cust_customer_id</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -33pt">
				<span style="FONT-SIZE: 14pt">(五) </span>
				<span style="FONT-SIZE: 14pt">Sybase IQ</span>
				<span style="FONT-SIZE: 14pt">内存配置</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 99pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">1、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">IQ</span>
				<span style="FONT-SIZE: 14pt">从单一的一个内存池中分配内存。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 99pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">2、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">从操作系统层面来看，IQ Server的内存是由堆组成。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 99pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">3、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">Buffer</span>
				<span style="FONT-SIZE: 14pt">：内存中的一块区域，它存储了写入数据库或从数据库中读取的未解压的数据。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 99pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">4、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">IQ Page Size</span>
				<span style="FONT-SIZE: 14pt">：IQ Server中每一个内存页的大小。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 99pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">5、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">IQ Page Size/16=BLOCK SIZE</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 99pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">6、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">在启动服务器时，可以用参数-c来指定服务器缓存的初始大小。在所有平台中，这个值最大为256M。</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 99pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">7、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">IQ Buffer</span>
				<span style="FONT-SIZE: 14pt">有两种类型：<br />（1）、主Buffer缓存：IQ Store的Buffer。（占总大小的40%）<br />（2）、临时Buffer：IQ temporary Buffer。（占总大小的60%）</span>
		</div>
		<div style="MARGIN: 0cm 0cm 0pt 99pt; TEXT-INDENT: -36pt">
				<span style="FONT-SIZE: 14pt">8、<span style="FONT: 7pt 'Times New Roman'">         </span></span>
				<span style="FONT-SIZE: 14pt">在Sybase IQ server中一个活动的用户大约占用10M内存，一个非活动用户大约占5M内存。</span>
		</div>
<img src ="http://www.blogjava.net/gf7/aggbug/107419.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/gf7/" target="_blank">风</a> 2007-03-30 10:10 <a href="http://www.blogjava.net/gf7/archive/2007/03/30/107419.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>