返回首页

gbase数据、南大通用产品文档:GBase8a、19216804 做为高可用节点。

更新日期:2024年09月11日

C# 示例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.Data;
using GBase.Data.GBaseClient;

namespace UsingAdoNet
{
class Program
{
static void Main(string[] args)
集群

获取下一个结果集
当有多个结果集返回时,可以使用游标的nextset 方法跳过结果集后直接
获取下一个结果集的数据。
from GBaseConnector import connect, GBaseError
if __name__ == '__main__':
config = {'host':'172.16.0.131',
'user':'root',
'passwd':'111111',
'port':5258,
'db':'test'}
try:
conn = connect()
conn.connect(**config)
cur = conn.cursor()
cur.execute("DROP TABLE IF EXISTS test")
cur.execute("CREATE TABLE test (COL1 INT, COL2 VARCHAR(20))")
opfmt = "INSERT INTO test(COL1, COL2) VALUES(%s, %s)"
rows = []
for i in xrange(0, 100):
rows.append((i, "row" + str(i)))
cur.executemany(opfmt, rows)

GBase Python 接口开发手册


- 12 -

南大通用数据技术股份有限公司
cur.execute("SELECT * FROM test limit 5;SELECT * FROM TEST LIMIT 10, 5;SELECT
* FROM TEST LIMIT 15, 5", multi_stmt= True)
cur.nextset(2)
print cur.fetchall()

cur.execute("DROP TABLE IF EXISTS test")
except GBaseError.DatabaseError, err:
print err
finally:
conn.close()
注意:获取下一个结果集方法nextset 不能在遍历过程中使用,如下面的
例子。
iters = cur.execute("SELECT * FROM test limit 5;SELECT * FROM TEST LIMIT 10, 5;SELECT *
FROM TEST LIMIT 15, 5", multi_stmt= True)
for ter in iters:
cur.nextset()
print cur.fetchall()

物理日志记录是在更改页实际记录在磁盘上之前存储数据库服务器将要更改的页的过程。
在数据库服务器修改共享内存缓冲池中的某些页之前,它将页的前映像存储在共享内存中
的物理日志缓冲区。
数据库服务器为这些页而将前映像页保留在共享内存的物理日志中,直至一个或多个页清
除程序将页清空到磁盘。未修改的页在数据库服务器发生故障或备份过程需要它们的情况
下可用于提供数据库服务器数据的准确快照。快速恢复和数据库服务器备份会使用这些快
照。
数据库服务器重新启动每个检查点上的物理日志,但特殊情况下的除外。有关检查点的更
多信息,请参阅检查点。
快速恢复物理记录页的使用
在故障后,数据库服务器使用页的前映像将磁盘上这些页复原至它们在上一个检查点中的
状态。 然后数据库服务器使用逻辑日志记录使所有数据返回至最近完成的事务之时物理
和逻辑上的一致状态。快速恢复更详细地说明了该过程。
物理记录的页的备份使用
当您执行备份时,数据库服务器执行检查点并检查物理日志,以确定备份上所属的页的正
确版本。在 0 级备份中,数据库服务器备份所有磁盘页。 有关更多详细信息,请参阅
《GBase 8s 备份与复原指南》。
物理记录的数据库服务器活动
如果对检查点之间的页作了多次调整,那么通常仅在物理日志中记录第一个前映像。
物理日志是一种循环日志,其中仅对每个检查点使用一次物理日志中的页。如果设置了
RTO_SERVER_RESTART 配置参数,那么将出现其他物理日志以提高快速恢复性能。
物理恢复消息
当快速恢复开始时,数据库服务器记录以下带有块和偏移量名称的消息:
Physical recovery started at page chunk:offset.
当快速恢复完成时,数据库服务器记录以下带有已检查和已复原页的数目的消息:
Physical recovery complete: number pages examined, number pages restored.
物理日志记录和简单大对象

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 308 -
物理日志中的数据库服务器页可以是任何数据库服务器页,包括表空间 (tblspaces) 中
的简单大对象。甚至开销页(如块可用列表页、BLOB 空间可用图页和 BLOB 空间位图
页)也会在页上数据修改并清空到磁盘之前复制到物理日志。
BLOB 空间 BLOB 页不在物理日志中记录。有关 BLOB 空间日志记录的更多信息,请参阅
记录 BLOB 空间和简单大对象。
物理日志记录和智能大对象
智能大对象的用户数据部分不进行物理记录。但是,元数据要物理记录。有关智能大对象
的信息,请参阅智能大对象空间。