eastpro 发表于 2008-6-10 15:29:22

恢复sybase库,已分析出日志文件里面的sql操作,sybase有执行***.sql的命令吗?

大家好,sybase刚接触使用,有问题请教, sybase中有执行***.sql文件的命令吗?
问题描述:
sybase碰到断电或者其它不可预测操作时,会导致sybase数据库操作,这时候需要还原数据库
解决步骤:
1:用Dbtran-y sybase.log db.sql将sybase.log中的数据库操作都读取出来放到db.sql中
2:dbeng9 sybase.db 连接sybase数据库
3:sqlpp -c "userid=dba;password=sql" db.sql 执行db.sql操作
问题:
db.sql我在anywhere9里面执行是没有问题的,但用命令读取文件执行报错.不知道怎么回事,是命令错误还是参数不对?
请大家帮忙看看,谢谢.

db.sql:
--CHECKPOINT-0000-0009145536-2008-06-08 16:38
--CONNECT-1003-0009145562-DBA-2008-06-08 16:38
--BEGIN TRANSACTION-1003-0009145573
BEGIN TRANSACTION
go
--INSERT-1003-0009145618
INSERT INTO DBA.a(id,sql)
VALUES (1,'a')
go
--INSERT-1003-0009145625
INSERT INTO DBA.a(id,sql)
VALUES (2,'b')
go
--COMMIT-1003-0009145632
COMMIT WORK
go
--CHECKPOINT-0000-0009145640-2008-06-08 16:39

db.c:
// *************************************************
// ********* GENERATED FILE - DO NOT EDIT! *********
// *************************************************

#define _SQL_SQLPP_VERSION_MAJOR 9
#define _SQL_SQLPP_VERSION_MINOR 0
#define _SQL_SQLPP_VERSION_MAINT 2
#define _SQL_SQLPP_DBLIB_VERSION 9
--CHECKPOINT-0000-0009145536-2008-06-08 16:38
--CONNECT-1003-0009145562-DBA-2008-06-08 16:38
--BEGIN TRANSACTION-1003-0009145573
BEGIN TRANSACTION
go
--INSERT-1003-0009145618
INSERT INTO DBA.a(id,sql)
VALUES (1,'a')
go
--INSERT-1003-0009145625
INSERT INTO DBA.a(id,sql)
VALUES (2,'b')
go
--COMMIT-1003-0009145632
COMMIT WORK
go
--CHECKPOINT-0000-0009145640-2008-06-08 16:39
fined(UL_ENABLE_SEGMENTS) || !defined(UL_ENABLE_GNU_SEGMENTS)
#define GNU_SEGMENT
#endif


#endif
typedef struct __alignment_detection __alignment_detection;
struct __alignment_detection{ ul_byte _byte; ul_u_big _big; };
#ifdef UL_ENABLE_SEGMENTS
#ifdef UL_ENABLE_GNU_SEGMENTS
#undef GNU_SEGMENT
#define GNU_SEGMENT      __attribute__((section("ULSEGDB")))
#else
#pragma segment ULSEGDB
#endif
#endif
extern ul_s_short ULMemSchemaRdr( ul_u_long ) GNU_SEGMENT;
ul_database ULDatabase =
{ UL_NULL,
UL_TEXT("ul_db"),
UL_NULL,
ULMemSchemaRdr,
UL_NULL,
#ifdef UL_ENABLE_OBFUSCATION
ULD_OBFUSCATE |
#endif
#if defined(UNICODE) || defined(_UNICODE)
ULD_UNICODE |
#endif
#ifdef UL_ENABLE_BIGIDX
ULD_BIGIDX |
#endif
ULD_NO_FLAGS,
UL_OFFSETOF( __alignment_detection, _big ) };
SQLCA sqlca = {{0}};
// Generated file -- do not edit
//   input file size: 1728 or 2K (rounded upwards).

#if !defined(UL_ENABLE_SEGMENTS) || !defined(UL_ENABLE_GNU_SEGMENTS)
#define GNU_SEGMENT
#endif

#ifdef UL_ENABLE_SEGMENTS
#ifdef UL_ENABLE_GNU_SEGMENTS
#undef GNU_SEGMENT
#define GNU_SEGMENT      __attribute__((section("ULSEGDB")))
#else
#pragma segment ULSEGDB
#endif
#endif

extern ul_s_short ULMemSchemaRdr
        ( ul_u_long index )
{
        char const * usm_data =
        "\x12\xAB\x34\xCD\x23\x32\xFF\xFF\xF0\xFF\xFF\xF0\xFF\x01\x00\x00"
                很长串这样的字符
        "\xFF\xF0\xFF\x01\xFF\xFF\xF0\xFF\xFF\xF0\xFF\x01\x12\xAB\x34\xCD"
        ;
        return index >= 1728 ? (-1) : (unsigned char)usm_data[ index ];
}
页: [1]
查看完整版本: 恢复sybase库,已分析出日志文件里面的sql操作,sybase有执行***.sql的命令吗?

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com