免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1029 | 回复: 0
打印 上一主题 下一主题

sybase11升级到12的方法 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-03-28 11:13 |只看该作者 |倒序浏览
如果要将sybase11以前的数据库升级到12.0的方法。按照如下步骤你可以轻松的做到。

1、首先使用sp_helpdevice 命令,将所显示的所有信息保存下来。
例如:
device_name physical_name
description


status cntrltype device_number
low
high
------------------------------ ----------------------------------------------
----------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
------------------------------------------------------------------------------
------ --------- -------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

staticdb /dev/rvol/dg2/vol03
special, physical disk, 200.00 MB


2 0 2
33554432
33656831
staticdb_log /dev/rvol/dg2/vol04
special, physical disk, 50.00 MB


2 0 3
50331648

2、使用sp_helpdb命令,同样保存所有的显示信息。
name db_size owner dbid
created
status
------------------------ ------------- ------------------------ ------
--------------
------------------------------------------------------------------------------------------------------
staticdb 250.0 MB sa 5
Nov 16, 1999
no options set

3、使用sp_helpdb db_name,这里db_name 是使用sp_helpdb显示结果中的信息。保存所有数据库的查询信息。以防不测。^_^
如:sp_helpdb staticdb
1>; sp_helpdb staticdb
2>; go
name db_size owner dbid
created
status
------------------------ ------------- ------------------------ ------
--------------
------------------------------------------------------------------------------------------------------
staticdb 250.0 MB sa 5
Nov 16, 1999
no options set

device_fragments size usage free kbytes
------------------------------ ------------- -------------------- -----------
staticdb 200.0 MB data only 200832
staticdb_log 50.0 MB log only 51184

(return status = 0)

4、dump 数据库信息.dump database db_name to "device path" .这里device path必须是一个sybase用户具有可写权限的目录。
建议新建一个目录。例如:”/usr/users/xxxxx"。(什么?不能dump?拿板砖砸你,backup_server有没有起起来。)
如果你没有做1-4中的任何一步,当你的数据库升级失败(致命的失败)的时候你只能说“如果上天再给我一次机会,我一定.........."。
我还是只能用板砖砸你。此时你基本上只有祈求奇迹的发生了。^_^
5、转储事务日志:
dump tran db_name with no_log
6、bcp系统表的信息。
select name form sysobjects where type='U',将显示结果保存。之后bcp出来所有系统表的信息。
bcp master..db_name out bcp_db_name -Sserver_name -Usa -Ppasswd -c -t@
6、12.0要求master,model,和tempdb的数据库的大小分别是7,3,3m的大小。所以下面要进行的就是数据库的扩充的问题。
alter database master on master=xx 单位是兆M。
alter database model on dev_name=xx
alter database tempdb on dev_name=xx

7、在12.0及以后版本的数据库中必须要有一个sybsystemdb数据库。所以要在现有的数据库server中创建一个这样的数据库。
首先初始化一个设备。
1>;disk init
2>;name='dev_name',physname='/dev/rvol/dg2/vol19',vdevno=18,size=512000 (ggjjddmm们能看懂吧??^_^)
3>;go

8、在刚才新初始化的设备上创建新的数据库sybsystemdb。
1>; create database sybsystemdb
2>; on dev_name=5
3>; log on dev_name=15 WITH OVERRIDE
4>;go
CREATE DATABASE: allocating 2560 pages on disk 'dev_name'
CREATE DATABASE: allocating 7680 pages on disk 'dev_name'
Msg 5018, Level 17, State 1:
Line 1:
Caution: You have set up this database to include space on disk 18 for both
data and the transaction log. This can make recovery impossible if that disk
fails.

9、关闭数据库中除tempdb库的"select ...."外的每个数据库的选项。
1>;sp_dboption db_name ,"option name" ,false
2>;go
1>;use db_name
2>;go
1>;checkpoint
2>;go
是对数据库的修改生效。

10、停止所有可能连接数据库的应用程序。
11、停止在后台或在crontab中设置的可能连接数据库的应用程序。
12、以sa登陆,使用sp_who 检查当前用户的个数。必须显示是只有一个用户,即自己。
13、编辑使用sqlupgraderes 使用的脚本文件。此文件在
$SYBASE/ASE-12_0/init/sample_resource_files/upgrade.rs,最好将upgrade.rs文件做一个拷贝并且重新命名,例如:
upgrade_servername.rs,文件中的相关设置其中的相关说明,应可以明白。
使用sqlupgraderes命令升级数据库。
sqlupgraderes -r $SYBASE/ASE-12_0/init/sample_resource_files/upgrade_servername.rs

到此你最好祈求上帝保佑你。祝你一切顺利。如果你看到10%字样出现的话,那么祝贺你,你的数据库升级已经成功了。当然这个
升级的过程比较慢,我升级的过程大概花费了10分钟左右。千万不可因为性急而中断。那样你只能扇自己的脸了。^_^

哦。忘了说在进行这些之前你一定正确安装了sybase12.0了吧。这里可能要说明一点就是,在安装之前你要将要升级的数据库额
.cshrc文件修改一下,将新的SYBASE 的路径设为新安装的数据库的路径,并在其中增加一个OLDSYBASE的环境变量。不用说你也知道这
个环境变量的用处是干什么的了吧!

好了,不罗嗦了,祝你数据库升级一帆风顺。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP