Sybase数据库可以建多个服务,包括(本地服务和网络服务)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

因为之前本机建的服务是用网络IP建的,所以当断网之后就不能用数据库服务了,

所以今天特地来建个本地服务,这是我在建的过程和遇到的一些问题,希望对大家有 所帮助。

  1.进入Sybase的Server Config 输入Adaptive Server Name(随便命名,没有要求, 但不用和之前的服务同名)

  2.修改Master Device的Path,不然把之前服务的覆盖了,可以建一个data1文件夹

  3.System Procedures Device 同样指定到data1目录下

  4.Network Addresses:配置DELL,4300(注意:DELL是本地计算机名,上我的电脑查看)

  5.Configure Default XP Server:DELL,4300

  6.完成后,点击continue,等待数分钟以后就自动完成了。

 

新的服务有了,我们可能就想把以前的服务里的数据库导出然后导入到新的服务里面,

这就涉及到了数据库的备份和恢复。

1.数据库备份:启动旧服务,进入到DOS命令窗口下:

isql -Usa -P -SDELL

(注:旧服务名DELL,新服务名DELL_NEW)

显示所有数据库:1>sp_helpdb  2>go

使用xmglbase数据库:1>use xmglbase  2>go

输入正常sql可以对数据库表中的数据查询,修改和删除。

1) 备份过程

a、备份前一般先清一下日志,可以使得备份出来的完整数据文件最小

dump tran databasename with truncate_only

b、备份 (先打开BS服务)

dump database databasename to "d:xmglbase.dat"

d盘跟目录下面生成了xmglbase.dat的备份文件

 

新服务建完之后我们需要创建数据库设备(通常说裸设备)

数据库设备通常有两种:一种是文件系统,另一种是裸设备

裸设备,也叫裸分区(原始分区),是一种没有经过格式化,不被Unix通过文件系统来读取的特别字符设备。他由应用程式负责对他进行读写操作。不经过文件系统的缓冲。文件系统还需要Unix进行管理,需要额外开销.应该是效率会降低。

对比安全性:裸设备更加安全,磁盘文件更容易受到破坏。

对比访问效率:以前版本是裸设备的访问效率高,不经过操作系统直接往里写,而往磁盘文件中写,必须经过操作系统的缓冲区,再往里写。但发展到现在,可以笼统地认为,二者的访问效率没有明显区别。但磁盘文件使用起来更加灵活方便,尤其做操作系统物理备份更为方便和重要。

创建数据库设备:
1>disk init name="cwdata1",physname="D:Sybase\data1\cwdata\cwdata1.dat",vdevno=1,size=512000    说明cwdata是data1下的一个文件夹

2>go

如果提示name..exist重新取个名,如果device 1已经存在vdevno换成别的数字

1>disk init name="cwlog1",physname="D:Sybase\data1\cwdata\cwlog1.dat",vdevno=2,size=512000

2>go

在设备上建数据库了

create database cwbase1 on cwdata1=1000 log on cwlog1=300

在数据库恢复的时候:得先建一个数据库而且分配大小能大于需要恢复数据库的大小

在Sybase Central java工具中连接服务,新建数据库给设备cwdata1,cwlog1设定大小。

下面就可以恢复数据库了:

load database <db_name> from D:\xmglbase.dat

go

online database db_name

go

只有在online才能通过powerBuilder对数据库访问。

最后告诉大家如果在过程中遇到了问题,上D:\sybase\ASE-12_5\install下的errorlog看错误信息,baidu解决。