Note for Sybase

1. ZDC: FTP
root
root
/datafile/swbackup/sybaseiq
2、查看端口:如果是windows,查看 %SYBASE%\ini\sql.ini如果是linux/unix,cat $SYBASE/interfaces
3、启动服务:startserver -f $SYBASE/ASE-15_0/install/RUN_MINOS -f $SYBASE/ASE-15_0/install/RUN_MINOS_BS    #红色字体是adaptive server名称和backup server名称
                      #启动完成后查看进程
                      bash-3.2$ showserver
4、连接:isql -Usa -Psybase15 –SMINOS   #红色字体是密码和adaptive server 名
5、关闭服务:bash-3.2$ isql -Usa -Psybase15 –SMINOS   #红色字体是密码和adaptive server 名
1> shutdown 
2> go


6. sed "s/\$hostname/$hn/g" zdc_test.cfg
   dbisqlc -c "uid=dba;pwd=sql;eng=utility_db;dbn=utility_db" -q zdc_createdb.sql
   stop_iq -stop all
   start_iq @zdc.cfg zdc
   dbisqlc -c "uid=dba;pwd=U_tywg_2008;eng="$hn"_zdc" -q zdc_dbinit.sql
   $SYBASE/IQ-15_1/IQ-15_1.SH 
   $ dbisqlc -c "uid=zte_zdc;pwd= U_tywg_2008;dbn=zdc"
   启动sybase IQ服务:start_iq -n utility_db
   停止sybase IQ服务:$stop_iq –stop all
   ps -ef |grep sybase
   以sybase用户登录系统,执行$sybuninstall/IQSuite/目录下的uninstall   
   $ dbisql -nogui -c "uid=dba;pwd=U_tywg_2008;eng=<hostname>_ison”
   select @@versio
  
7. 上传license文件:
                        将license文件用ftp上传至sybase安装路径下的/home/Sybase/SYSAM-2_0/licenses/,注意,用bin(二进制)模式上传。
8. 启动zdc数据库服务。命令如下:
                        start_iq -n utility_db
                        $start_iq @zdc.cfg zdc
9、在sybase用户下执行如下命令:
                        $ dbisqlc -c "uid=zte_zdc;pwd= U_tywg_2008;dbn=zdc"
                        会弹出如下的对话框,表示zdc数据库已经启动,并能够正确连接。
10、SYBASE IQ常用命令记录:
          1)SELECT connection_property( 'number' )查看当前连接ID
          2)DROP CONNECTION connection-id
          3)Sp_iqstatus 查看IQ数据库信息的存储过程
          4)过-iqmc,-iqtc,两个参数。其中iqmc表示:主缓存/内存,iqtc表示:临时缓存/内存,一般它们的比例推荐值是iqmc:iqtc 4:6
          5)Temporary-临时生效 Option public.IQMSG_LENTH_MB=500,限制IQmsg文件的大小为500MB,当加了temporary时,表示本次连接生效
          6)一般关系型数据库索引是B-Tree,IQ的索引机制是BitMap. IQ索引的类型主要包括:FP,LF,HG,HNG等
          7)表:包括基本表 create table mytable
             本地临时表 create table #mytable
             全局临时表 create global temporary table  mytable 区分它们的生命周期与作用
             不记日志删除整个表数据:turncate table
          8)熟悉Load , Insert select from, Insert into 三种的比较,前面的最快。
             注意下Load里面的特殊分隔符,如换行: \x0a , tab: \x09 其中load比较重要。
          9)IQ的Sql语句,一些特别的如:select top ...select frist等
          10)IQ的数据导出,两种导出方式的第一种>#file.txt,第二种set....
              第一种导出文件生成在服务器端,第二种导出文件生成在执行语句的客户端。
          11)IQ的用户管理,建立一个新的IQ用户可以通过grant connect,知道IQ的grant的一些赋权语句。
          12)sp_iqconnection,sp_iqcontext,
11、Sybase IQ Help笔记:
          1)设置环境变量:
                     . $SYBASE/IQ-15_1/IQ-15_1.SH 
                     或者 source $SYBASE/IQ-15_1/IQ-15_1.SH
          2)启动浏览器: scjview
12、SYBASE裸设备创建数据库:
          1)建物理卷:   # pvcreate /dev/sdc
                            # pvs
          2)创建卷组:     # vgcreate racvg /dev/sdc
                            # vgs
          3)创建逻辑卷:   # lvcreate -n lv01 -L 7.99G racvg
                            # lvcreate -n lv02 -L 1.99G racvg
                            # lvs
          4)扫描LVM和激活卷组: # vgscan  
                                 # vgchange -ay
          5)编辑/etc/raw,创建裸设备: # vi /etc/raw    raw1:mapper/racvg-lv01 
                                                       raw2:mapper/racvg-lv02
          6) 启动raw服务:       # chkconfig raw on
          7)执行绑定:          # service raw start
          8) 查询绑定关系:      # raw -qa
          9) 修改权限:
# chown -R sybiq:sybase racvg-lv01  
# chown -R sybiq:sybase racvg-lv02 
# chown -R sybiq:Sybase raw1  
# chown -R sybiq:Sybase raw2
注意:Sybase IQ 在Suse Linux 10裸设备上创建数据库的时候存在一个BUG。
描述:Suse Linux 10把rawctl文件从/dev目录移动到/dev/raw目录,
      导致IQ往raw partition上进行写操作的时候,由于在/dev目录
      下找不到rawctl文件就会创建失败。 
解决办法:在/dev目录下使用link命令建立到/dev/raw/rawctl/的soft link。
命令如下: # ln –s /dev/raw/rawctl /dev/rawctl  
           # chown –R sybiq:sybase /dev/rawctl  
   10) 解决系统重启后权限自动还原的问题 
                          问题描述:裸设备权限修改之后,每次系统重新启动后又还原成原来的权限。 
                          解决办法:编辑/etc/init.d/raw文件,将上面修改权限和创建soft link的命令添加到文档结束前的倒数第二行。  
   11)启动demo数据库: >start_asiq @asiqdemo.cfg asiqdemo.db 
                       >isql–UDBA –PSQL –Sasiqdemo 
   12)创建ccibiq库脚本: >create database ‘/home/sybiq/ccibiqdb/ccibiq.db’ 
                         >iq path ‘/dev/raw/raw1’ 
                         >temporary path ‘/dev/raw/raw2’ 
                         >log on ‘/home/sybiq/ccibiqdb/ccibiq.log’ 
                         >iq size 1024 >temporary size 256  --单位为M 
                         >iq page size 131072  --单位为M 
                         >collation ‘936ZHO’--单位为2014,该值128k 
                         >go
   13)启动创建的ccibiq库:  > start_asiq @ccibiq.cfg ccibiq.db–Jcp936   
   14)创建用户和授权:      >isql–UDBA –PSQL –SCCIB_SERV –Jcp936 
                           >sp_iqaddlogin‘ccib’,’ccib123’ 
                           >go 
                           >grant DBA to ccib 
                           >go
   15)使用新创建的用户登陆ccibiq库:  >isql–Uccib –Pccib123 –SCCIB_SERV –Jcp936  
   16)删除ccibiq库                   >drop database ‘/home/sybiq/ccibiqdb/ccibiq.db’ 
                                     >go                                                                                             


      设置 export  _JAVA_OPTIONS="-xms64M  -XMX128M"


注意:对于linux环境,需要用root用户核查修改如下两个环境配置文件
1. 检查或创建/etc/redhat-release文件,确保其中具有如下两行内容:
redhat-4
Red Hat Enterprise Linux Server release 5 (Tikanga)
2. 检查/etc/security/limits.conf,确保其中具有如下两行内容(修改后需要重新用sybase用户登录, 登录后用ulimit -a命令可检查当前用户的max user processes的值是否生效为2047)
sybase   soft       nproc   2047
sybase   hard       nproc   16384


?libXext-devel.i686
?libXtst-devel.i686
compat-libcwait-2.0-2.i386.rpm


查看版本:sybase用户登录服务器执行start_iq -v 或者连接数据库用sp_iqstatus    select @@version
****************************************************************************************************************************************************************






sybase iq知识 Sybase IQ支持的主要索引类型为: 
·LowFast-LF(低基数) 
·HighGroup-HG(高基数) 
·HighNonGroup-HNG(高基数) 
·FastProjiectinFP 


建立Bit-Wise索引的一般原则: 
(1)在每个列上都建FP索引; 
(2)在唯一值<1000的字段上建立LF索引; 
(3)在参加连接的字段上建HG或LF索引; 
(4)唯一值>1000且用在GROUP BY,SELCT DISITICT,COUNT DISITICT中的字段上建立HG索引; 
(5)此外的其它列若出现在where条件中或聚集运算中,则建立HNG索引。


Sybase IQ可利用预连接技术来提高即席查询速度 
Sybase IQ支持两类连接处理:一类是即席连接(在查询时处理);另一类是预连接(在加载时处理)。大多数应用是二者的结合。即席连接适用于多对多的联系,被连接的表之间的尺寸差别超过10倍。 
预连接适用于一对多的联系,被连接的表之间的尺寸差别不大于10倍,如:等值或左、右外连接。但预连接将导致增大存储量并降低加载速度。 
Sybase IQ能对已建立了HG或LF索引的列,再利用"Joined Indexset"完成预连接处理。它通常能使查询速度提高10倍以


/
IQ STORE 约点总磁盘空间的70%。IQ temporary Store大小约为IQ Store的20%。
UNIX:不少于800M。
WINDOWS:不少于375M。
虚拟内存=物理内存+磁盘交换分区大小。
/
  Start utility db
/
start_asiq -n myserver -gu utility_db
dbisqlc -c
"eng=myserver;uid=DBA;pwd=SQL;dbn=utility_db;links=tcpip{host=158.77.123.244:2638}" -q createdb.sql 1>createdb.out 2>createdb.err
/
  Create database
/
start_asiq -n myserver -gu utility_db


create database '/sybaseiq/data/LSL.db'
  message path  '/sybaseiq/data/LSL.iqmsg'
  log on  '/sybaseiq/data/LSL.log'
  temporary path  '/sybaseiq/data/IQTemp_01'
  IQ PATH '/sybaseiq/data/IQMain_01'
  IQ PAGE SIZE 262144
--  IQ SIZE 2048
--  TEMPORARY SIZE 4096
  case respect
  collation 'EUC_CHINA'
--  collation '936ZHO'
  blank padding on
  java on
--  transaction log on
--  PASSWORD CASE RESPECT
  jconnect on;


/
  Drop database
/
DROP DATABASE '/sybaseiq/data/LSL.db'


/
 Add dbspace
/
create dbspace IQMain_01  AS '/sybaseiq/data/IQMain_01' size 4096;
create dbspace IQMain_02  AS '/sybaseiq/data/IQMain_02' IQ STORE;
create dbspace IQMain_03  AS '/sybaseiq/data/IQMain_03' IQ STORE;
create dbspace IQMain_04  AS '/sybaseiq/data/IQMain_04' IQ STORE;
create dbspace IQMain_05  AS '/sybaseiq/data/IQMain_05' IQ STORE;


/
 Drop dbspace
/
drop dbspace IQMain_01


/
 database option
/
set option public.minimize_storage='on' ;
set option public.IQMSG_LENGTH_MB=300;
set option public.load_memory_mb=100 ;
set option public.notify_modulus=1000000 ;
set option public.append_load='on' ;
set option Public.Disk_Striping = 'ON';
set option Public.Disk_Striping_Packed = 'ON' ;
set option public.Parallel_GBH_Enabled='ON' ;
set option public.Parallel_GBH_Units=24 ;
set option Public.Force_No_Scroll_Cursors ='ON' ;
set option Public.query_temp_space_limit=0;
set option Public.Query_Plan ='OFF' ;
set option Public.Query_Detail ='OFF' ;


/
 link disk and file
/
ln -s /dev/vgjyfxdb/rlvjyfxsyb01 /sybaseiq/data/IQMain_01
ln -s /dev/vgjyfxdb/rlvjyfxsyb02 /sybaseiq/data/IQMain_02
ln -s /dev/vgjyfxdb/rlvjyfxsyb03 /sybaseiq/data/IQMain_03
ln -s /dev/vgjyfxdb/rlvjyfxsyb04 /sybaseiq/data/IQMain_04
ln -s /dev/vgjyfxdb/rlvjyfxsyb05 /sybaseiq/data/IQMain_05
ln -s /dev/vgjyfxdb/rlvjyfxsyb06 /sybaseiq/data/IQTemp_01





 backup.sh
/
#backup IQ file size: 20GB
DAT=$(date '+%Y%m%d')
iqsup<<!
backup database crc on full to '/dump/sybiq/iq_full_$DAT.dmp' size 20000000
go
!




/
 start_asiq [config file] dbname [switchs]
/
start_asiq @LSL.cfg LSL.db
/
  stop.sh
/
stop_asiq

Dbstop -c "uid=DBA; pwd=SQL; eng=server_name; dbn=db_name"


/
 database.cfg
/
# LSL.cfg
# ------------------------------------------------------------
# Default startup parameters for the ASIQ demo database
# ------------------------------------------------------------
#第一个 -n servername ;第二个 -n dbname
-n LSL
-x tcpip{port=4500}
# The following parameters are also found in the configuration file 
# $ASDIR/scripts/default.cfg.  Any parameters not specified below
# and not in the start up parameter list, will be added by start_asiq 
# using default.cfg as a guide.


-cl  32m
-ch  1024m
-gc 20
-gd all
-gl all
# -gm 最大连接数
-gm 50 
-iqnumbercpus 9
-gp 4096 
-ti 4400 
-tl 1200
-p 8192
-iqmc 8000
-iqtc 12000


#设置服务器和数据选项
#1、 数据库的启动参数均可以写在".cfg"文件中。
#2、 启动服务器的语法:
#start_asiq server-switchs database_file
#其中:"server-switchs"可以为:
#-c :缓存大小,默认windows为32M,Unix为48M。
#-gp:Catalog store页大小。
#-gm:服务器允许的连接数。
#-n:IQ server的名字。如果有两个"-n"选项,则第一个是IQ server的名字,第二个"-n"为IQ 数据库的名字。
#-gc:checkpoint时间间隔。默认为20,推荐为6000。
#-gr:最大的恢复时间。默认为2。
#-ti:客户端超时时间。默认为4400分钟。
#-tl:默认网络超时时间。默认120秒。
#-iqmc:主缓存大小,单位:M。
#-iqtc:临时缓存大小,单位:M。
#注:主缓存:临时缓存=2:3
#在默认情况下,Sybase IQ server使用2638端口。


创建用户:
sp_iqaddlogin username 'password'
或者
创建用户或者修改密码:
grant connect to user1,user2 identified by password1,password2
grant resource to user1
select * from sysobjects


#使用SET OPTION命令更变数据库的配置:  
#(1)、语法: 
#SET [TEMPORARY] OPTION  
#[user_id. | PUBLIC.]option_name = [option_value]  
#其中的"option_name"可以是: 
#Force_No_Scroll_Cursors='on'(默认为"off")禁止缓存用户的查询结果。 
#Query_Temp_Space_Limit=0(默认为2000M),设置临时缓存的最大值。0表示不限制。  
#Public.Query_Plan='off'(默认为"on")禁止将用户的查询计划打印到IQ Message File中,因为查询计划可以会使之大小迅速增加。


#例子:  
#SET OPTION public.Force_NO_Scroll_Cursors='no'  
#查看数据库的所有被改动过的(即非默认值)选项,用存储过程:sp_iqcheckoptions。


#Sybase IQ内存配置 
#1、 IQ从单一的一个内存池中分配内存。  
#2、 从操作系统层面来看,IQ Server的内存是由堆组成。 
#3、 Buffer:内存中的一块区域,它存储了写入数据库或从数据库中读取的未解压的数据。 
#4、 IQ Page Size:IQ Server中每一个内存页的大小。 
#5、 IQ Page Size/16=BLOCK SIZE  
#6、 在启动服务器时,可以用参数-c来指定服务器缓存的初始大小。在所有平台中,这个值最大为256M。
#7、 IQ Buffer有两种类型: 
#  (1)、主Buffer缓存:IQ Store的Buffer。(占总大小的40%)
#  (2)、临时Buffer:IQ temporary Buffer。(占总大小的60%)
#8、 在Sybase IQ server中一个活动的用户大约占用10M内存,一个非活动用户大约占5M内存。


##unix odbc
[SybaseIQ_64bit]
driver=/work/sybase/ASIQ-12_6/lib/libdbodbc9.so
UID=dba
PWD=sql
Servername=<hostmachine>_asiqdemo
CommLinks=tcpip
DatabaseName=asiqdemo


可选的有:
LogFile=/work/sybase/ASIQ-12_6/mylogfile.out
ANAAppCodePage=4
InstallDir=/work/sybase/ASIQ-12_6/lib
Trace=0
TraceDll=/work/sybase/ASIQ-12_6/lib/odbctrac.so
TraceFile=odbctrace.out
UseCursorLib=0


##widows odbc
tcp/ip选项:host=xxx.xxx.xxx.xxx;port=xxxx


#open client
#windows:
server address:  ip,port
#unix interface
iqtest125
master tcp ether 158.77.123.244 2661
query tcp ether 158.77.123.244 2661
要求:数据库名和Server 名必须一致。
open client可用isql连接来测试


数据库性能监控例程
. sp_iqconnection 显示连接用户和版本
. sp_iqcontext 显示运行参数
. sp_iqcheckdb 数据库正确性检查
. sp_iqdbstatistics 最近的 sp_iqcheckdb 结果
. sp_iqdbsize gives the size of the current database
. sp_iqspaceinfo 输出数据库对象使用空间情况
. sp_iqstatus 数据库各种信息展现
. sp_iqtablesize 输出指定表的大小
. sp_iqgroupsize 输出指定组成


执行计划显示
. 当前系统选项查看 SET;
. SET TEMPORARY OPTION Query_Plan=ON;
. SET TEMPORARY OPTION Query_Detail=ON;
. SET TEMPORARY OPTION Query_Plan_After_Run=ON;
. SET TEMPORARY OPTION Query_Plan_AS_HTML=ON;
. SET TEMPORARY OPTION QUERY_PLAN_AS_HTML_DIRECTORY='/tmp';


倒出存储过程:
defncopy -Udw -Pdw -Sdwdev out procedure.sql tpdw_dev proc_test
将一个DBSPACE中的OBJECTS移动到另一个DBSPACE中:Sp_iqrelocate


把远程库同步到本地库的方法:
1,建一个remote server(jdbc,ip:port?CHARSET=charset)
2,从远程表中select数据到本地表:
insert into locateTablename location 'remoteservername.remotedbname'  {select * from remoteTablename};


以root用户登陆并修改 /etc/security/limits.conf,并追加以下内容
vi /etc/security/limits.conf
sybase           soft    nproc   2047 
sybase           hard    nproc   16384 
sybase           soft    nofile  1024
sybase           hard    nofile  65536
以root用户登陆并修改/etc/pam.d/login文件,并追加以下内容
session    required     /lib64/security/pam_limits.so


 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于微信小程序的家政服务预约系统采用PHP语言和微信小程序技术,数据库采用Mysql,运行软件为微信开发者工具。本系统实现了管理员和客户、员工三个角色的功能。管理员的功能为客户管理、员工管理、家政服务管理、服务预约管理、员工风采管理、客户需求管理、接单管理等。客户的功能为查看家政服务进行预约和发布自己的需求以及管理预约信息和接单信息等。员工可以查看预约信息和进行接单。本系统实现了网上预约家政服务的流程化管理,可以帮助工作人员的管理工作和帮助客户查询家政服务的相关信息,改变了客户找家政服务的方式,提高了预约家政服务的效率。 本系统是针对网上预约家政服务开发的工作管理系统,包括到所有的工作内容。可以使网上预约家政服务的工作合理化和流程化。本系统包括手机端设计和电脑端设计,有界面和数据库。本系统的使用角色分为管理员和客户、员工三个身份。管理员可以管理系统里的所有信息。员工可以发布服务信息和查询客户的需求进行接单。客户可以发布需求和预约家政服务以及管理预约信息、接单信息。 本功能可以实现家政服务信息的查询和删除,管理员添加家政服务信息功能填写正确的信息就可以实现家政服务信息的添加,点击家政服务信息管理功能可以看到基于微信小程序的家政服务预约系统里所有家政服务的信息,在添加家政服务信息的界面里需要填写标题信息,当信息填写不正确就会造成家政服务信息添加失败。员工风采信息可以使客户更好的了解员工。员工风采信息管理的流程为,管理员点击员工风采信息管理功能,查看员工风采信息,点击员工风采信息添加功能,输入员工风采信息然后点击提交按钮就可以完成员工风采信息的添加。客户需求信息关系着客户的家政服务预约,管理员可以查询和修改客户需求信息,还可以查看客户需求的添加时间。接单信息属于本系统里的核心数据,管理员可以对接单的信息进行查询。本功能设计的目的可以使家政服务进行及时的安排。管理员可以查询员工信息,可以进行修改删除。 客户可以查看自己的预约和修改自己的资料并发布需求以及管理接单信息等。 在首页里可以看到管理员添加和管理的信息,客户可以在首页里进行家政服务的预约和公司介绍信息的了解。 员工可以查询客户需求进行接单以及管理家政服务信息和留言信息、收藏信息等。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值