Sybase命令

Sybase命令

 

 

清理日志空间
dump tran master with no_log
go

dump tran sgsovsc with no_log
go

dump tran sgsovsc with truncate_only
go
//查看当前已经安装的字符集
use master
go
select id,name from syscharsets
go

//查看当前使用的缺省字符集
sp_configure "default char"
go


//查看服务器端字符集的详细,有4个表
sp_helpsort
go

//查看客户端字符集
select @@client_csname
go

//设置服务端字符集为utf8
sp_configure 'default character set id',190
go
shutdown
go
然后重启服务

//修改sa密码
sp_password   '123456',NULL,sa
go


//导出文本文件用|分隔
bcp   tableName   out/in   result.txt   -c   -t"|"   -Uuser   -Ppassword

--------------------------------------------------------------
      sybase12.5安装时的缺省charset是cp850,这样不支持中文。语句中插入的中文取出来会是乱码  
      问一下sybase公司的人,那些家伙都说客户端也要设置相同的字符才行,我试一下,不行。  
      又说服务端用cp936或e gb,客户端设置一样,这样中文是可以用,但是cp936和e gb却要区分大小写。如果那样用数据库简直是要人的命,不可能记得住每个表的名称和字段的大小写的。  
      他们又推荐utf8,我再试,只支持部分中文字,有的字就是不认。  
      一句话,sybase就是烂,比oracle和sqlserver烂多了,既然开发了中文字符支持,为什么又不支持一下不区分大小写呢?  
      当我万般无奈准备用回sybase120的时候,决定再试一下。服务端用utf8,虽然所有的sybase官方推荐客户端设置要和服务端设置一样,但我要试一下客户端用cp936  
效果如何。结果成功!。既可以支持中文,又可以不区分大小写。  
sybase那帮人也真够烂的,自己的产品都不知怎么用。  
    
记住,服务端设utf8,客户端cp936。
---------------------------------------------------------------

//加载utf8字符集

sybase设置字符集,以utf-8为例
服务器端:
c:/>cd /sybase/charsets/utf8
c:/sybase/charsets/utf8> charset -Usa -P -Schenwei(小写才行) binary.srt utf8
修改数据库字符集为utf8:sp_configure "default character set id",190
修改数据库大小不敏感:sp_configure 'default sortorder id',52
客户端:
客户端字符集配置(为数据库备份和恢复用到):
/sybase/locales/locales.dat
找到NT,修改最后一行配置为locale = default, us_english, cp936

//bcp命令
bcp ovsc..maxspeed out D:/cc.txt -Usa -P -Shunter -c -t "|"


===============================================================

Sybase常用命令

命令行登录
isql -Sservername -Usa -P
安装字符集
charset -Usa -Ppassword -Sservername binary.srt utf8
charset -Usa -Ppassword -Sservername nocase.srt utf8
设置字符集
sp_configure 'default charac',173
设置排序
sp_helpsort
sp_configure 'default sortorder_id',101
Sybase数据库数据和日志空间不能自动扩展,需要手工管理。
数据库备份恢复
dump database dbname to "c://xxx.dmp"    --注意文件生成在数据库服务器端
load database dbname from "c://xxx.dmp"    
online database dbname
表数据备份恢复
bcp dbname..tablename {out|in} c:/XXX -Usa -Ppassword –Sservername -Jutf8 –c -y
use dbname
go
select 'bcp dbname..' + name + ' out c:/' + name + ' -Usa -P -Ssname -c' from sysobjects where type = 'U'
go
在isql中执行脚本文件
isql -Usa -P -Sservername -Ddbname -iInputfile -oOutputfile
配置Adaptive Server核心参数
sp_configure "max online engines", 1 go
sp_configure "max memory", 393216 go
sp_configure "number of user connections", 300 go
sp_configure "number of open objects", 1500 go
sp_configure "number of open indexes", 1000 go
sp_configure "lock wait period", 300 go
sp_configure "number of devices", 20 go
sp_addserver 'SYB_BACKUP',NULL,'SYB_BACKUP' go
创建数据库
disk init name ="dbname", physname="d:/sybase/data/dbname.dat", size=262144 go
disk init name ="dbname_log", physname="d:/sybase/data/dbname_log.dat", size=524288 go
create database DBNAME on dbname = 512 log on dbname_log = 1024 go
sp_addlogin dbname, dbname,DBNAME,us_english use DBNAME go
sp_changedbowner dbname go  


===============================================================


sybase数据库的一些常用命令收藏

1.  服务器的字符集设置,例cp936,安装cp936字符集

a)         假如SYBASE的安装路径为c:/sybase

                         i.              c:/>cd /sybase/charsets/cp936

                       ii.              c:/sybase/charsets/cp936> charset -Usa -Psa_pass -Sserver_name binary.srt cp936

b)        使用isql登陆server

                         i.              select name,id from syscharsets

                       ii.              go

                      iii.              找到name为cp936对应的id(假设为171)

c)        设置服务器端的字符集为cp936

                         i.              sp_configure "default character set id",171

                       ii.              go

d)        重启server两次(注:第一次启动后,server会自动宕掉,需要第二次重启后才能使用)

2.  进入sybase目录下的locales文件夹打开locales.dat找到其服务器使用的操作系统对应的字符集设置(例如windows XP则查看[NT]下的字符集设置)

a)         查看是否设置了环境变量LANG=C,如果设置了,则在最后添加一行”locale = C,us_english,cp936 ”的

b)        如果没有设置LANG环境变量,则将最后一行的” locale = default, us_english, iso_1”改为” locale = default, us_english, cp936”

3.  使用isql命令登陆server端查看客户端和服务器端的字符集设置

a)         查看服务器端的字符集

                         i.              sp_helpsort

                       ii.              go

b)        查看客户端的字符集

                         i.              select @@client_csname

                       ii.              go

c)        如果不一致则检查上述工作是否错误


4.  使用load database命令导入数据库(去之前使用dump database 将数据库备份)

a)         dump database命令

                         i.              dump database cqpower to "d:/backups/cqpower.dat"

                       ii.              go

b)        load database命令

                         i.              load database cqpower from "d:/backups/cqpower.dat"

                       ii.              go

5.  使用online database命令将数据库激活

a)         online database 命令

                         i.              online database cqpower

                       ii.              go

6.  使用sp_dropdevice命令删除设备

a)       sp_dropdevice 命令

                         i.              sp_dropdevice 设备名

                       ii.              go

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值