神通数据库参数配置工具手册
ETL工具Kettle用户手册

Spoon 用户手册Spoon 2.5.0用户手册 (1)1、Spoon介绍 (14)1、1 什么是Spoon (14)1、2 安装 (14)1、3 运行Spoon (14)1、4 资源库 (14)1、5 资源库自动登录 (15)1、6 定义 (15)1、6、1 转换 (15)1、6、2 任务 (16)1、7 工具栏 (17)1、8 选项 (17)1、8、1 General标签 (18)1、8、2 Look Feel标签 (19)1、9 搜索元数据 (19)1、10设置环境变量 (20)2、创建一个转换或任务(Creating a Transformation or Job) (21)3、数据库连接(Database Connections) (21)3、1 描述 (21)3、2 设置窗口 (22)3、3 选项 (22)3、4 数据库用法 (22)4、SQL编辑器(SQL Editor) (23)4、1 描述 (23)4、2 屏幕截图 (23)4、3 局限性 (24)5、数据库浏览器(Database Explorer) (24)5、1 屏幕截图 (24)5、2 描述 (24)6、节点连接(Hops) (25)6、1 描述 (25)6、1、1 转换连接 (25)6、1、2 任务连接 (25)6、2 屏幕截图 (25)6、3 创建一个连接 (26)6、4 拆分一个连接 (26)6、5 转换连接颜色 (26)7、变量(Variables) (27)7、1 变量使用 (27)7、2 变量范围 (27)7、2、1 环境变量 (27)7、2、2 Kettle变量 (27)7、2、3 内部变量 (27)8、转换设置(Transformation Settings) (28)8、1 描述 (28)8、2 屏幕截图 (29)8、3 选项 (32)8、4 其它 (33)9、转换步骤(Transformation steps) (33)9、1 描述 (33)9、2 运行步骤的多个副本 (33)9、3 分发或者复制 (35)9、4 常用错误处理 (35)9、5 Apache虚拟文件系统(VFS)支持 (37)9、6 转换步骤类型 (39)9、6、1 文本文件输入(Text Input) (39)9、6、1、1 屏幕截图 (39)9、6、1、2 图标 (41)9、6、1、3 常用描述 (42)9、6、1、4 选项 (42)9、6、1、5 格式化 (47)9、6、1、6 其它 (48)9、6、2 表输入(Table Input) (49)9、6、2、1 屏幕截图 (49)9、6、2、2 图标 (49)9、6、2、3 常用描述 (49)9、6、2、4 选项 (50)9、6、2、5 示例 (50)9、6、2、6 其它 (51)9、6、3 获取系统信息(Get System Info) (51)9、6、3、1 屏幕截图 (51)9、6、3、2 图标 (52)9、6、3、3 常用描述 (52)9、6、3、4 选项 (53)9、6、3、5 用法 (53)9、6、4 生成行(Generate Rows) (54)9、6、4、1 屏幕截图 (54)9、6、4、2 图标 (54)9、6、4、3 常用描述 (55)9、6、5 文件反序列化(De-serialize from file)(原来名称为Cube Input) (55)9、6、5、1 屏幕截图 (55)9、6、5、2 图标 (55)9、6、5、3 常用描述 (55)9、6、6 XBase输入(XBase input) (56)9、6、6、1 屏幕截图 (56)9、6、6、2 图标 (56)9、6、6、3 常用描述 (56)9、6、6、4 选项 (56)9、6、7 Excel输入(Excel Input) (57)9、6、7、1 屏幕截图 (57)9、6、7、2 图标 (59)9、6、7、3 常用描述 (59)9、6、7、4 选项 (59)9、6、8 XML输入(XML input) (60)9、6、8、1 屏幕截图 (60)9、6、8、2 图标 (61)9、6、8、3 常用描述 (61)9、6、8、4 选项 (62)9、6、9 获取文件名(Get File Names) (63)9、6、9、1 屏幕截图 (63)9、6、9、2 图标 (63)9、6、9、3 常用描述 (63)9、6、10 文本文件输出(Text File Output) (64)9、6、10、1 屏幕截图 (64)9、6、10、2 图标 (65)9、6、10、3 常用描述 (65)9、6、11 表输出(Table output) (67)9、6、11、1 屏幕截图 (67)9、6、11、2 图标 (67)9、6、11、3 常用描述 (67)9、6、11、4 选项 (68)9、6、11、5 其它 (68)9、6、12 插入/更新(Insert/Update) (69)9、6、12、1 屏幕截图 (69)9、6、12、2 图标 (69)9、6、12、3 常用描述 (69)9、6、12、4 选项 (70)9、6、12、5 其它 (70)9、6、13 更新(Update) (71)9、6、13、1 屏幕截图 (71)9、6、13、2 图标 (71)9、6、13、3 常用描述 (71)9、6、14、1 屏幕截图 (72)9、6、14、2 图标 (72)9、6、14、3 常用描述 (72)9、6、15 序列化到文件(Serialize to file)(以前是Cube Output) (73)9、6、15、1 屏幕截图 (73)9、6、15、2 图标 (73)9、6、15、3 常用描述 (73)9、6、16 XML输出(XML output) (74)9、6、16、1 屏幕截图 (74)9、6、16、2 图标 (75)9、6、16、3 常用描述 (75)9、6、16、4 选项 (75)9、6、17 Excel输出(Excel Output) (76)9、6、17、1 屏幕截图 (76)9、6、17、2 图标 (78)9、6、17、3 常用描述 (78)9、6、17、4 选项 (78)9、6、18 Access输出(Microsoft Access Output) (79)9、6、18、1 屏幕截图 (79)9、6、18、2 图标 (79)9、6、18、3 常用描述 (79)9、6、18、4 选项 (79)9、6、19 数据库查询(Database lookup) (80)9、6、19、1 屏幕截图 (80)9、6、19、2 图标 (80)9、6、19、3 常用描述 (80)9、6、19、4 选项 (81)9、6、20 流查询(Stream lookup) (81)9、6、20、1 屏幕截图 (81)9、6、20、2 图标 (81)9、6、20、3 常用描述 (82)9、6、20、4 选项 (82)9、6、20、5 其它 (82)9、6、21 调用数据库存储过程(Call DB Procedure) (83)9、6、21、1 屏幕截图 (83)9、6、21、2 图标 (83)9、6、21、3 常用描述 (83)9、6、21、4 选项 (83)9、6、21、5 其它 (84)9、6、22 HTTP客户端(HTTP Cient) (84)9、6、22、1 屏幕截图 (84)9、6、22、2 图标 (84)9、6、22、3 常用描述 (84)9、6、23 字段选择(Select values) (85)9、6、23、1 屏幕截图 (85)9、6、23、2 图标 (87)9、6、23、3 常用描述 (87)9、6、23、4 选项 (87)9、6、24 过滤行(Filter rows) (88)9、6、24、1 屏幕截图 (88)9、6、24、2 图标 (88)9、6、24、3 常用描述 (88)9、6、24、4 选项 (88)9、6、25 行排序(Sort rows) (89)9、6、25、1 屏幕截图 (89)9、6、25、2 图标 (89)9、6、25、3 常用描述 (89)9、6、25、4 选项 (89)9、6、25、5 其它 (90)9、6、26 添加序列(Add sequence) (90)9、6、26、1 屏幕截图 (90)9、6、26、2 图标 (90)9、6、26、3 常用描述 (90)9、6、26、4 选项 (91)9、6、27 空操作-什么都不做(Dummy-do nothing) (91)9、6、27、1 屏幕截图 (91)9、6、27、2 图标 (91)9、6、27、3 常用描述 (91)9、6、27、4 选项 (92)9、6、28 行转列(Row Normaliser) (93)9、6、28、1 屏幕截图 (93)9、6、28、2 图标 (93)9、6、28、3 常用描述 (93)9、6、28、4 选项 (94)9、6、28、5 其它 (94)9、6、29 拆分字段(Split Fields) (95)9、6、29、1 屏幕截图 (95)9、6、29、2 图标 (95)9、6、29、3 常用描述 (95)9、6、29、4 选项 (95)9、6、30 去除重复记录(Unique rows) (96)9、6、30、1 屏幕截图 (96)9、6、30、2 图标 (96)9、6、30、3 常用描述 (97)9、6、30、4 选项 (97)9、6、30、5 其它 (97)9、6、31、1 屏幕截图 (98)9、6、31、2 图标 (98)9、6、31、3 常用描述 (98)9、6、31、4 选项 (99)9、6、32 设置为空值(Null if) (99)9、6、32、1 屏幕截图 (99)9、6、32、2 图标 (99)9、6、32、3 常用描述 (100)9、6、33 计算器(Calculator) (100)9、6、33、1 屏幕截图 (100)9、6、33、2 图标 (100)9、6、33、3 常用描述 (101)9、6、33、4 功能列表 (101)9、6、34增加XML(XML Add) (102)9、6、34、1 屏幕截图 (102)9、6、34、2 图标 (102)9、6、34、3 常用描述 (102)9、6、34、4 选项 (103)9、6、35增加常量(Add constants) (103)9、6、35、1 屏幕截图 (103)9、6、35、2 图标 (103)9、6、35、3 常用描述和使用 (104)9、6、36行转列(Row Denormaliser) (104)9、6、36、1 屏幕截图 (104)9、6、36、2 图标 (104)9、6、36、3 常用描述 (105)9、6、36、4 选项 (105)9、6、37行扁平化(Flattener) (105)9、6、37、1 屏幕截图 (105)9、6、37、2 图标 (105)9、6、37、3 常用描述 (105)9、6、37、4 选项 (106)9、6、37、5 示例 (106)9、6、38值映射(Value Mapper) (107)9、6、38、1 屏幕截图 (107)9、6、38、2 图标 (107)9、6、38、3 常用描述 (107)9、6、39被冻结的步骤(Blocking step) (108)9、6、39、1 屏幕截图 (108)9、6、39、2 图标 (108)9、6、39、3 常用描述 (108)9、6、40记录关联(笛卡尔输出)(Join Rows-Cartesian Product) (109)9、6、40、1 屏幕截图 (109)9、6、40、3 常用描述 (109)9、6、40、4 选项 (110)9、6、41数据库连接(Database Join) (110)9、6、41、1 屏幕截图 (110)9、6、41、2 图标 (111)9、6、41、3 常用描述 (111)9、6、41、4 选项 (111)9、6、42合并记录(Merge rows) (112)9、6、42、1 屏幕截图 (112)9、6、42、2 图标 (112)9、6、42、3 常用描述 (112)9、6、43 存储合并(Stored Merge) (113)9、6、43、1 屏幕截图 (113)9、6、43、2 图标 (113)9、6、43、3 常用描述 (113)9、6、44 合并连接(Merge Join) (114)9、6、44、1 屏幕截图 (114)9、6、44、2 图标 (114)9、6、44、3 常用描述和使用 (114)9、6、44、4 选项 (114)9、6、45 Java Script值(Java Script Value) (115)9、6、45、1 屏幕截图 (115)9、6、45、2 图标 (115)9、6、45、3 常用描述 (115)9、6、45、4 选项 (115)9、6、45、5 其它 (116)9、6、45、6 值函数 (116)9、6、45、7 JavaScript示例 (120)9、6、45、7、1 回忆先前的行 (120)9、6、45、7、2 设置地址名称到大写 (120)9、6、45、7、3 从日期字段提取信息 (120)9、6、46改进的Java Script值(Modified Java Script Value) (121)9、6、46、1 屏幕截图 (121)9、6、46、2 图标 (121)9、6、46、3 常用描述 (121)9、6、46、4 Java Script函数 (121)9、6、46、5 Java Script (122)9、6、46、6 字段 (122)9、6、46、7 其它 (122)9、6、47执行SQL语句(Execute SQL script) (123)9、6、47、1 屏幕截图 (123)9、6、47、2 图标 (123)9、6、47、3 常用描述 (123)9、6、48 维度更新/查询(Dimension lookup/update) (126)9、6、48、1 屏幕截图 (126)9、6、48、2 图标 (126)9、6、49 联合更新/查询(Combination lookup/update) (127)9、6、49、1 屏幕截图 (127)9、6、49、2 图标 (127)9、6、49、3 常用描述 (127)9、6、50 映射(Mapping) (128)9、6、50、1 屏幕截图 (128)9、6、50、2 图标 (128)9、6、50、3 常用描述和使用 (128)9、6、51 从结果获取记录(Get rows from result) (129)9、6、51、1 屏幕截图 (129)9、6、51、2 图标 (129)9、6、51、3 常用描述 (129)9、6、52 复制记录到结果(Copy rows to result) (129)9、6、52、1 屏幕截图 (129)9、6、52、2 图标 (130)9、6、52、3 常用描述 (130)9、6、53 设置变量(Set Variable) (130)9、6、53、1 屏幕截图 (130)9、6、53、2 图标 (130)9、6、53、3 常用描述 (131)9、6、53、4 变量使用 (131)9、6、54 获取变量(Get Variable) (131)9、6、54、1 屏幕截图 (131)9、6、54、2 图标 (132)9、6、54、3 常用描述 (132)9、6、55 从以前的结果获取文件(Get files from result) (132)9、6、55、1 屏幕截图 (132)9、6、55、2 图标 (132)9、6、55、3 常用描述 (132)9、6、56 复制文件名到结果(Set files in result) (133)9、6、56、1 屏幕截图 (133)9、6、56、2 图标 (133)9、6、56、3 常用描述 (133)9、6、57 记录注射器(Injector) (134)9、6、57、1 屏幕截图 (134)9、6、57、2 图标 (134)9、6、57、3 常用描述 (134)9、6、58 套接字读入器(Socket Reader) (135)9、6、58、1 屏幕截图 (135)9、6、58、2 图标 (135)9、6、58、3 常用描述和使用 (135)9、6、59 套接字输写器(Socket Writer) (135)9、6、59、1 屏幕截图 (135)9、6、59、2 图标 (136)9、6、59、3 常用描述和使用 (136)9、6、60聚合行(Aggregate Rows) (136)9、6、60、1 屏幕截图 (136)9、6、60、2 图标 (136)9、6、60、3 常用描述 (136)9、6、60、4 选项 (137)9、6、61流XML输入(Streaming XML Input) (137)9、6、61、1 屏幕截图 (137)9、6、61、2 图标 (138)9、6、61、3 常用描述 (139)9、6、61、4 选项 (139)9、6、61、5 完整的示例 (140)9、6、62中止(Abort) (142)9、6、62、1 屏幕截图 (142)9、6、62、2 图标 (142)9、6、62、3 常用描述 (143)9、6、62、4 选项 (143)9、6、63Oracle批量装载(Oracle bulk loader) (144)9、6、63、1 屏幕截图 (144)9、6、63、2 图标 (144)9、6、63、3 常用描述 (145)9、6、63、4 选项 (145)10、任务设置(Job Settings) (145)10、1 描述 (145)10、2 屏幕截图 (146)10、3 选项 (146)10、4 其它 (146)11、任务条目(Job Entries) (147)11、1 描述 (147)11、2 任务条目类型 (147)11、2、1特殊的任务条目 (147)11、2、1、1 屏幕截图 (147)11、2、1、2 图标 (147)11、2、1、3 常用描述 (148)11、2、1、3、1 启动 (148)11、2、1、3、2 Dummy (148)11、2、1、3、3 OK (148)11、2、1、3、4 ERROR (148)11、2、2 转换 (149)11、2、2、1 屏幕截图 (149)11、2、2、2 图标 (149)11、2、2、3 常用描述 (149)11、2、2、4 选项 (149)11、2、3 任务 (151)11、2、3、1 屏幕截图 (151)11、2、3、2 图标 (151)11、2、3、3 常用描述 (151)11、2、3、4 选项 (151)11、2、4 Shell (152)11、2、4、1 屏幕截图 (152)11、2、4、2 图标 (153)11、2、4、3 常用描述 (153)11、2、4、4 选项 (153)11、2、5 Mail (154)11、2、5、1 屏幕截图 (154)11、2、5、2 图标 (154)11、2、5、3 常用描述 (155)11、2、5、4 选项 (155)11、2、6 SQL (156)11、2、6、1 屏幕截图 (156)11、2、6、2 图标 (156)11、2、6、3 常用描述 (156)11、2、6、4 选项 (156)11、2、7 FTP (157)11、2、7、1 屏幕截图 (157)11、2、7、2 图标 (157)11、2、7、3 常用描述 (157)11、2、7、4 选项 (157)11、2、8 Table Exists (158)11、2、8、1 屏幕截图 (158)11、2、8、2 图标 (159)11、2、8、3 常用描述 (159)11、2、8、4 选项 (159)11、2、9 File Exists (159)11、2、9、1 屏幕截图 (159)11、2、9、2 图标 (159)11、2、9、3 常用描述 (159)11、2、9、4 选项 (160)11、2、10 Evaluation(javascript) (160)11、2、10、1 屏幕截图 (160)11、2、10、2 图标 (160)11、2、10、3 常用描述 (160)11、2、10、4 选项 (161)11、2、11 SFTP (161)11、2、11、1 屏幕截图 (161)11、2、11、3 常用描述 (162)11、2、11、4 选项 (162)11、2、12 HTTP (163)11、2、12、1 屏幕截图 (163)11、2、12、2 图标 (163)11、2、12、3 常用描述 (163)11、2、12、4 选项 (163)11、2、13 Create a file (164)11、2、13、1 屏幕截图 (164)11、2、13、2 图标 (165)11、2、13、3 常用描述 (165)11、2、13、4 选项 (165)11、2、13、5 其它 (165)11、2、14 Delete a file (165)11、2、14、1 屏幕截图 (165)11、2、14、2 图标 (165)11、2、14、3 常用描述 (166)11、2、14、4 选项 (166)11、2、14、5 其它 (166)11、2、15 Wait a file (166)11、2、15、1 屏幕截图 (166)11、2、15、2 图标 (166)11、2、15、3 常用描述 (167)11、2、15、4 选项 (167)11、2、15、5 其它 (167)11、2、16 File compare (167)11、2、16、1 屏幕截图 (167)11、2、16、2 图标 (168)11、2、16、3 常用描述 (168)11、2、16、4 选项 (168)11、2、16、5 其它 (168)11、2、17 Put files with secureFTP (169)11、2、17、1 屏幕截图 (169)11、2、17、2 图标 (169)11、2、17、3 常用描述 (169)11、2、17、4 选项 (169)11、2、18 Ping a host (170)11、2、18、1 屏幕截图 (170)11、2、18、2 图标 (170)11、2、18、3 常用描述 (170)11、2、18、4 选项 (170)11、2、19 Wait for (171)11、2、19、1 屏幕截图 (171)11、2、19、3 常用描述 (171)11、2、19、4 选项 (171)11、2、20 Display Msgbox info (172)11、2、20、1 屏幕截图 (172)11、2、20、2 图标 (172)11、2、20、3 常用描述 (172)11、2、20、4 选项 (172)11、2、21 Abort job (173)11、2、21、1 屏幕截图 (173)11、2、21、2 图标 (173)11、2、21、3 常用描述 (173)11、2、21、4 选项 (173)11、2、22 XSL transformation (174)11、2、22、1 屏幕截图 (174)11、2、22、2 图标 (174)11、2、22、3 常用描述 (174)11、2、22、4 选项 (174)11、2、23 Zip files (175)11、2、23、1 屏幕截图 (175)11、2、23、2 图标 (175)11、2、23、3 常用描述 (175)11、2、23、4 选项 (175)12、图形界面(Graphical View) (176)12、1 描述 (176)12、2 添加步骤或者任务条目 (176)12、2、1 拖放创建步骤 (176)12、2、2 从步骤类型树创建步骤 (177)12、2、3 在你想要的位置创建步骤 (177)12、3 隐藏步骤 (177)12、4 转换步骤选项(右键上下文菜单) (177)12、4、1 编辑步骤 (177)12、4、2 编辑步骤描述 (177)12、4、3 数据迁移 (177)12、4、4 复制 (177)12、4、5 复制步骤 (178)12、4、6 删除步骤 (178)12、4、7 显示输入字段 (178)12、4、8 显示输出字段 (178)12、5 任务条目选项(右键上下文菜单) (178)12、5、1 打开转换/任务 (178)12、5、2 编辑任务入口 (178)12、5、3 编辑任务入口描述 (178)12、5、4 复制任务入口 (178)12、5、5 复制选择的任务入口到剪贴板 (178)12、5、6 排列/分布 (179)12、5、7 拆开节点 (179)12、5、8 删除所有任务入口的副本 (179)12、6 添加节点连接 (179)12、7 运行转换 (179)12、8 屏幕截图 (179)12、9 执行选项 (180)12、9、1 在哪里执行 (180)12、9、2 预览 (180)12、9、3 使用安全模式 (180)12、9、4 日志级别 (180)12、9、5 重放日期 (180)12、9、6 参数 (180)12、9、7 变量 (180)12、10 设置远程或者从属服务器 (181)12、10、1 概述 (181)12、10、2 屏幕截图 (181)13、日志(Logging) (181)13、1 日志描述 (181)13、2 屏幕截图 (182)13、3 日志网格 (182)13、3、1 转换日志网格 (182)13、3、2 任务日志网格 (183)13、4 按钮 (183)13、4、1 转换按钮 (183)13、4、1、1 开始转换 (183)13、4、1、2 预览 (183)13、4、1、3 显示错误行 (183)13、4、1、4 清除日志 (184)13、4、1、5 日志设置 (184)13、4、1、6 仅仅显示活动的步骤 (184)13、4、2 任务按钮 (184)13、4、2、1 启动任务 (184)13、4、2、2 停止任务 (185)13、4、2、3 刷新日志 (185)13、4、2、4 清除日志 (185)13、4、2、5 日志设置 (185)13、4、2、6 自动刷新 (186)14、网格(Grids) (186)14、1 描述 (186)14、2 功能 (186)14、3 导航 (186)15、资源库浏览器(Repository Explorer) (187)15、1 描述 (187)15、2 屏幕截图 (187)15、3 右键单击功能 (187)15、4 备份/资源库 (188)16、共享对象(Share objects) (188)1、Spoon介绍1、1 什么是SpoonKettle是”Kettle E.T.T.L. Envirnonment”只取首字母的缩写。
SUNDB数据库开发者指南说明书

Developer Manual Developer Manual目录1.Database Connection (1)1.1特征 (1)1.2选择执行成员 (2)1.3Global Session (4)1.4约束事项 (6)1.5设置 (8)2.ODBC (9)2.1SUNDB ODBC Driver概述 (9)2.2数据源构成 (13)2.3GLOBAL CONNECTION (36)2.4目录函数 (48)2.5非标准数据类型 (54)2.6ODBC API References (69)2.7XA API References (580)3.JDBC (607)3.1概要 (607)3.1功能详情 (614)3.2JDBC API References (669)4.Embedded SQL (942)4.1Precompiler (942)4.2Embedded SQL (958)4.3Advanced Topic (1149)4.4Embedded SQL Reference (1214)Developer Manual 5.PDO (1252)5.1PDO概要 (1252)5.2安装/构成 (1252)5.3使用 (1256)5.4示例 (1256)6.PyDBC (1275)6.1SUNDB PyDBC (1275)6.2API Reference (1280)6.3Exception (1302)6.4Data Type (1304)7.Ruby (1309)7.1概要 (1309)7.2安装 (1309)7.3示例 (1311)7.4ActiveRecord的使用示例 (1316)8.Hibernate (1322)8.1概要 (1322)8.2联动 (1322)8.3示例 (1325)1.Database Connection1.1特征Figure30-1GLOBAL CONNECTIONGlobal connection功能是考虑到数据locality的事务性能优化方案通常connection连接一个成员而global connection连接所有成员使用global connection的应用程序执行查询访问的数据最多的成员的查询从而提高性能Global connection可用于hashrangelist sharding等所有方式此时不需要变更应用程序执行online scale-out时用户不需要追加考虑新的节点应用程序可自动访问新节点运行此节点Figure30-2GLOBAL CONNECTION HA(high availability)执行SQL时所选节点发生故障时通过其他组的其他节点执行SQL所选的组的所有节点发生故障时通过其他组执行SQL恢复发生故障的节点时在online状态下自动重新访问该节点不仅如此用户也可以使用以下语句使应用程序重新执行访问ALTER SYSTEM RECONNECT GLOBAL CONNECTION1.2选择执行成员执行成员按照事务为单位进行选择没有事务时首次执行DML查询时按照sharding key选择组组内的执行成员取决于LOCALITY_MEMBER_POLICY参数之后在COMMIT或ROLLBACK之前执行的所有查询在所选成员中执行如果首次查询未选择根据sharding key的合适的组时根据LOCALITY_GROUP_POLICY参数决定组Figure30-3选择成员上图中transaction1的UPDATE查询根据sharding key在group1执行因此后续COMMIT之间的所有查询均在group1执行Transaction2的UPDATE查询在group3执行即使后续查询不适合在group 3执行但在COMMIT之前所有查询均在group3执行在没有事务的情况下只读专用查询(SELECT)与其他查询相同根据sharding key选择执行成员但后续执行的查询未必在上一次选择的成员中执行即包含在事务的所有查询仅在一个成员中执行与事务无关的查询按照查询为单位选择成员1.3Global SessionFigure30-4从global connection衍生的cluster session与应用程序直接连接的会话叫做driver session从driver session到其他成员的会话叫做cluster sessionGlobal connection在所有成员中创建driver session根据所需向其他成员创建cluster session由于global connection的特征可在一个成员中创建多个cluster sessionFigure30-5Global sessionGlobal session是在global connection创建的cluster session共享一个会话并由此提高资源效率的功能Global connection不使用global session时根据组和成员的增加而增加cluster session相反使用global session时即使增加组和成员也不会增加cluster sessionGlobal session功能仅可在global connection使用普通connection无法使用1.4约束事项使用global connection时SQL语句无法使用拥有session dependenccy的对象(session dependent object)或语句(session dependent clause)或函数(session dependent function)另外访问多个集群节点的SQL存在于一个事务中时事务中的SQL共同使用第一个SQL的sharding key选择的集群节点Global connection中查询仅在以prepare execute执行时考虑数据locality以direct execute执行时在任意节点执行Session Dependent Object在SQL语句使用session dependent object时不支持global connection●Global temporary tableSession Dependent Clause在SQL语句使用session dependent clause时不支持global connection●所有@domain相关语句Session Dependent Function和Pseudo Column 在SQL语句使用session dependent信息时不支持global connection●CURRVAL(sequence),sequence.CURRVAL●UUID()●VERSION()●SESSION_ID()●SESSION_SERIAL()●USER_ID()●LAST_IDENTITY_VALUE()●STATEMENT_VIEW_SCN()●STATEMENT_VIEW_SCN_GCN()●STATEMENT_VIEW_SCN_DCN()●STATEMENT_VIEW_SCN_LCN()●LOCAL_GROUP_ID()●LOCAL_MEMBER_ID()●LOCAL_GROUP_NAME()●LOCAL_MEMBER_NAME()●CLUSTER_GROUP_ID●CLUSTER_GROUP_NAME●CLUSTER_MEMBER_ID●CLUSTER_MEMBER_NAME●CLUSTER_SHARD_ID使用Global Session功能的情况SQL语句不支持Data Definition Language(DDL) 1.5设置详细内容参考如下●ODBC Global Connection●JDBC Global Connection2.ODBC2.1SUNDB ODBC Driver概述SUNDB ODBC Driver的概念ODBC(开放数据库互连Open Database Connectivity)是数据库API(Application Programming Interface)的配置Microsoft ODBC3.0版本基于International Standards Organization/ International Electromechanical Commission(ISO/IEC)和X/open的分级调用接口(CLI)的推荐配置ODBC使用C libarary函数支持SQL语句应用程序通过调用该函数实现ODBC功能架构由执行以下功能的个要素组成组成要素功能应用程序调用与ODBC数据源通信的ODBC函数传递SQL语句后处理结果集驱动管理器管理应用程序以及应用程序中使用的所有ODBC驱动程序之间的通信驱动处理应用程序中的所有ODBC调用连接数据源并从应用程序将SQL语句传递至数据源后向应用程序返回结果必要时驱动将应用程序传递的ODBC SQL转换为数据源使用的基本SQL数据源包含驱动访问数据库数据时所需的所有信息使用ODBC应用程序可以执行以下操作●连接数据源●向数据源传输SQL语句●在数据源处理SQL语句的结果●错误及信息处理●断开与数据源的连接ODBC构成要素概要包含驱动管理器的SUNDB ODBC Driver以下为系统包含驱动管理器的软件架构此时应用程序需要链接到驱动管理器库Figure31-1包含驱动管理器的SUNDB ODBC driver不包含驱动管理器的SUNDB ODBC Driver下图为系统不包含驱动管理器并使用SUNDB ODBC driver的架构此时应用程序需要直接链接到SUNDB ODBC driver库Figure31-2不包含驱动管理器的SUNDB ODBC driverSUNDB ODBC Driver的使用头文件(header file)执行SUNDB ODBC driver需要有$SUNDB_HOME/include中设置的sundb.h文件此文件定义SUNDB ODBC driver的常数和类型提供SUNDB ODBC driver函数的原型库(Libraray)不使用驱动管理器的应用程序需要链接SUNDB ODBC driver库的静态或共享文件UNIX文件名说明libsundb.a包含DA与CS的库的静态版本libsundba.a DA专用库的静态版本libsundbas.so DA专用库的共享版本文件名说明libsundbc.a CS专用库的静态版本libsundbcs-ul32.so将SQLLEN识别为4字节的64Bit CS专用库的共享版本libsundbcs-ul64.so将SQLLEN识别为8字节的64Bit CS专用库的共享版本libsundbcs.so32Bit CS专用库的共享版本libsundbs.so包含DA与CS的库的共享版本Table31-1SUNDB UNIX ODBC driver库文件WindowsSUNDB Windows ODBC driver库只提供CS库文件文件名说明sundbcs-ul64.dll将SQLLEN识别为8字节的64Bit CS专用库的共享版本sundbcs.dll32Bit CS专用库的共享版本sundbsetup32.dll设置32Bit ODBC driver manager的库sundbsetup64.dll设置64Bit ODBC driver manager的库Table31-2SUNDB Windows ODBC driver库文件SUNDB数据库SQL手册2.2数据源构成UNIX中的DSN设置odbcinst.ini文件odbcinst.ini是已安装的ODBC驱动程序的配置文件●unixODBC%odbcinst-junixODBC2.3.4DRIVERS............:/etc/odbcinst.iniSYSTEM DATA SOURCES:/etc/odbc.iniFILE DATA SOURCES..:/etc/ODBCDataSourcesUSER DATA SOURCES..:/home/sundb/.odbc.iniSQLULEN Size.......:8SQLLEN Size........:8SQLSETPOSIROW Size.:8●iODBC%iodbc-config--odbcinstini/etc/odbcinst.iniODBC Driver配置odbcinst.ini文件的ODBC驱动程序配置部分描述驱动程序属性值和目录每个安装的驱动程序的驱动程序名称下有注册信息部分[driver_name]Description=driver_descriptionDriver=driver_library_pathSetup=setup_library_pathFileUsage=file_usage下表描述了驱动程序配置部分中的关键字关键字说明Description说明驱动程序的字符串Driver驱动library路径Setup安装library路径FileUsage显示基于文件的驱动在DSN中直接处理文件的方法的文字以下为查看SUNDB ODBC驱动配置相关信息的示例[SUNDB ODBC Driver]Description=SUNDB ODBC DriverDriver=/home/sundb/home/lib/libsundbcs-ul64.soSetup=/home/sundb/home/lib/libsundbcs-ul64.soFileUsage=0odbc.ini文件odbc.ini文件是应用程序连接的DSN的配置文件分为用户DSN与系统DSN通常用户DSN文件为~/.odbc.ini文件系统DSN文件为/etc/odbc.ini文件●unixODBC%odbcinst-junixODBC2.3.4DRIVERS............:/etc/odbcinst.iniSYSTEM DATA SOURCES:/etc/odbc.iniFILE DATA SOURCES..:/etc/ODBCDataSourcesUSER DATA SOURCES..:/home/sundb/.odbc.iniSQLULEN Size.......:8SQLLEN Size........:8SQLSETPOSIROW Size.:8●iODBC%iodbc-config--odbcini/etc/odbc.ini数据源配置odbc.ini文件的数据源配置部分中说明DSN[data_source_name]Driver=driver_namePROTOCOL={DA|TCP|IPC}CS_MODE={default|dedicated|shared}HOST=host_addressPORT=port_noPREFER_IPV6={0|1}CHARSET={SQL_ASCII|UTF8|UHC|GB18030}TCP_NODELAY={0|1}ALTERNATE_SERVERS=(HOST=ADDRESS1:PORT=PORT1,HOST=ADDRESS2:PORT=PORT2) CONNECTION_RETRY_COUNT=retry_countCONNECTION_RETRY_DELAY=retry_delayFAILOVER_TYPE={CONNECTION|SESSION}FAILOVER_GRANULARITY={0|1|2}FAILOVER_ROUTING_POLICY={0|1}DATE_FORMAT=date_format_stringTIME_FORMAT=time_format_stringTIME_WITH_TIME_ZONE_FORMAT=timetz_format_stringTIMESTAMP_FORMAT=timestamp_format_stringTIMESTAMP_WITH_TIME_ZONE_FORMAT=timestamptz_format_stringCHAR_LENGTH_UNITS={BYTE|OCTETS|CHAR|CHARACTERS}ENABLE_SQLDESCRIBEPARAM={0|1}ENABLE_SQLBINDPARAMETER_CONSISTENCY_CHECK={0|1}USE_TARGETTYPE={0|1|2}LOCATOR_DSN=locator_dsn_nameLOCATOR_SERVICE=locator_service_nameLOCALITY_AWARE_TRANSACTION={0|1}LOCALITY_GROUP_POLICY={0|1|2}LOCALITY_GROUP_PATH=group_name1,group_name2,group_name3LOCALITY_MEMBER_POLICY={0|1|2|3|4}LOCALITY_MEMBER_PATH=member_name1,member_name2,member_name3DB_HOME=database_home_pathPACKET_COMPRESSION_THRESHOLD=packet_compression_thresholdUSE_GLOBAL_SESSION={0|1}LOGIN_TIMEOUT=login_timeoutTRACE={0|1}TRACEFILE=file_path_nameTRACE_POLICY={DEFAULT|ERROR}INCLUDE_SYNONYMS={0|1}DOT_NET_FOR_ODBC={0|1}[locator_dsn_name]FILE=location_file_nameHOST=IP address(v4)PORT=locator_portCONNECTION_TIMEOUT=secondALTERNATE_LOCATORS=(HOST=ADDRESS1:PORT=PORT1,HOST=ADDRESS2:PORT=PORT2)下表为数据源配置部分的关键字属性说明data_source_name数据源section中指定的数据源Driver odbcinst.ini中安装的驱动名PROTOCOL与服务器连接的方式●DA:无额外的通讯直接连接●TCP:使用TCP socket进行通讯●IPC:使用共享内存进行通讯并且需要与server在相同设备上第一次连接时为了传输IPC信息会使用TCP连接所以需要设置HOST和PORT仅可使用Dedicated模式进行连接CS_MODE 设置以dedicated模式访问还是以shared模式连接如果不使用此设置模式取决于listener的configuration(DEFAULT_CS_MODE)HOST HOST IP地址或名称PORT连接端口号PREFER_IPV6HOST参数为HOST名时IP地址中优先IPv6 TCP_NODELAY socket TCP_NODELAY选项UID用户ID属性说明PWD用户密码CHARSET客户端字符集ALTERNATE_SERVERS 发生failover时尝试连接的服务器目录每个服务器以逗号","区分不使用failover功能时不设置ALTERNATE_SERVERSCONNECTION_RETRY_COUNT连接失败时尝试连接服务器的次数CONNECTION_RETRY_DELAY连接失败时尝试连接的服务器的时间间隔(单位:秒)FAILOVER_TYPE ●CONNECTION:连接失败时连接至ALTERNATE_SERVERS●SESSION:连接失败或处理statement过程中连接断开时连接至ALTERNATE_SERVERS后恢复statement如果断开连接时没有进行中的事务则failover后执行进行中的statementFAILOVER_GRANULARITY●0:进行failover的过程中发生错误也继续进行failover属性说明●1:进行failover的过程中发生除SQLExeceute()SQLExecDirect()外的错误时failover将失败●2:进行failover的过程中发生错误时failover将失败DATE_FORMAT DATE类型字符串TIME_FORMAT TIME类型字符串TIME_WITH_TIME_ZONE_FORMAT TIME WITH TIME ZONE类型字符串TIMESTAMP_FORMAT TIMESTAMP类型字符串TIMESTAMP_WITH_TIME_ZONE_FORMAT TIMESTAMP WITH TIME ZONE类型字符串CHAR_LENGTH_UNITS SQLBindParameter()中ParameterType为SQL_CHARSQL_VARCHAR时的ColumnSize的单位●BYTE,OCTETS:以byte为单位●CHAR,CHARACTERS:以字符为单位ENABLE_SQLDESCRIBEPARAM决定是否执行SQLDescribeParam()●0:不支持SQLDescribeParam()●1:对所有parameter返回属性说明SQL_VARCHARENABLE_SQLBINDPARAMETER_CONSISTENCY_CHECK决定是否检查SQLBindParameter()的ColumnSize和DecimalDigits●0:不检查ColumnSize和DecimalDigits ●1:检查ColumnSize和DecimalDigitsUSE_TARGETTYPE设置以通信接收column类型时同时接收的类型信息●0:仅接收column类型●1:接收column类型与column名称●2:接收column类型与column的所有信息LOCATOR_DSN指定Location信息的Data Source Name(DSN)LOCATOR_SERVICE从Service hintglocator获取访问信息LOCALITY_AWARE_TRANSACTION是否使用GLOBAL CONNECTION●0:不使用GLOBAL CONNECTION ●1:使用GLOBAL CONNECTION属性说明LOCALITY_GROUP_POLICY使用GLOBAL CONNECTION时没有可选择的群组或可以选择两个以上的群组时设置群组选择方法●0:任意选择●1:按照顺序选择LOCALITY_GROUP_PATH设置中的群组无法使用LOCALITY_GROUP_PATH的所有群组时选择任意群组●2:按照顺序选择每次按照驱动中连接的群组顺序选择LOCALITY_GROUP_PATH 使用GLOBAL CONNECTION时可选择的群组不是1个时指定选择的群组的目录各群组以逗号()区分例:G1G2G3LOCALITY_MEMBER_POLICY决定使用GLOBAL CONNECTION时所选的群组中的成员的选择方法●0:DML:MASTER/SELECT:MASTER ●1:DML:ANY/SELECT:ANY●2:DML:MASTER/SELECT:ANY●3:DML:MASTER/SELECT:SLAVE属性说明●4:按照LOCALITY_MEMBER_PATH设置中的成员的顺序进行选择无法使用LOCALITY_MEMBER_PATH中的所有成员时选择所选群组的MASTERLOCALITY_MEMBER_PATH 指定在使用GLOBAL CONNECTION时所选的群组中要使用的成员的目录各成员以逗号()区分例:G1N1,G2N1,G3N1,G1N2,G2N2,G3N2DB_HOME设置数据库的home目录默认值使用$SUNDB_HOME的环境变量PACKET_COMPRESSION_THRESHOLD 发送至服务器的通信数据的大小大于PACKET_COMPRESSION_THRESHOLD时压缩通信数据设定值的范围为32~2113929216USE_GLOBAL_SESSION是否使用GLOBAL SESSION●0:不使用GLOBAL SESSION ●1:使用GLOBAL SESSIONLOGIN_TIMEOUT等待完成login请求的时间(秒)TRACE是否在ODBC API使用trace属性说明●0:不使用trace●1:使用traceTRACEFILE Trace文件名输入在相对路径时执行程序的当前目录成为标准默认值为'odbc_trace.log'TRACE_POLICY Trace策略默认值为DEFAULT●DEFAULT:同时记录函数参数和结果●ERROR:函数失败时记录日志INCLUDE_SYNONYMS决定是否在SQLGetColumns()中包含synonym 个体.●0:不包含synonym个体●1:包含synonym个体DOT_NET_FOR_ODBC决定是否将ODBC用于.NET Framework用途●0:不改变用途●1:SQLGetDescField()和SQLColAttribute()中将SQL_DESC_BASE_COLUMN_NAME,属性说明SQL_DESC_NAME属性替换为SQL_DESC_LABEL Table31-3数据源配置部分的关键字关键字说明FILE Location file nameHOST glocator ip addressPORT glocator port number CONNECTION_TIMEOUT Connection timeout with glocator(second) ALTERNATE_LOCATORS未收到glocator的响应时使用ALTERNATE_LOCATORS获取访问信息Table31-4LocationNote:*LOCATOR_DSN中已设置FILE与HOSTPORT属性时优先适用FILE属性FILE相关详细内容参考Location File*通过LOCATOR_SERVICE属性可访问LOCATOR_SERVICE所属的服务器所访问的服务器以外的服务器为ALTERNATE_SERVERS+未设置FAILOVER_TYPE则FAILOVER_TYPE为session+未设置FAILOVER_GRANULARITY则FAILOVER_GRANULARITY为1+详细内容参考glocator与gloctlSUNDB的DSN配置如下[SUNDB]Driver=SUNDB ODBC DriverPROTOCOL=TCPCS_MODE=SHAREDHOST=192.168.0.10PORT=22581CHARSET=UTF8TCP_NODELAY=1ALTERNATE_SERVERS=(HOST=192.168.0.11:PORT=22581,HOST=192.168.0.12:PORT=22581) CONNECTION_RETRY_COUNT=3CONNECTION_RETRY_DELAY=1FAILOVER_TYPE=SESSIONFAILOVER_GRANULARITY=0FAILOVER_ROUTING_POLICY=0DATE_FORMAT=YYYY-MM-DDTIME_FORMAT=HH24:MI:SS.FF6TIME_WITH_TIME_ZONE_FORMAT=HH24:MI:SS.FF6TZH:TZMTIMESTAMP_FORMAT=YYYY-MM-DD HH24:MI:SS.FF6TIMESTAMP_WITH_TIME_ZONE_FORMAT=YYYY-MM-DD HH24:MI:SS.FF6TZH:TZM CHAR_LENGTH_UNITS=CHARACTERSENABLE_SQLDESCRIBEPARAM=1ENABLE_SQLBINDPARAMETER_CONSISTENCY_CHECK=1USE_TARGETTYPE=0INCLUDE_SYNONYMS=0PACKET_COMPRESSION_THRESHOLD=2113929216LOCALITY_AWARE_TRANSACTION=0LOCALITY_GROUP_POLICY=0LOCALITY_GROUP_PATH=G1,G2,G3LOCALITY_MEMBER_POLICY=0LOCALITY_MEMBER_PATH=G1N1,G2N1,G3N1,G1N2,G2N2,G3N2 USE_GLOBAL_SESSION=0LOGIN_TIMEOUT=0LOCATOR_DSN=LOCATORLOCATOR_SERVICE=S1TRACE=1TRACEFILE=/home/test/log/mytrace.logDOT_NET_FOR_ODBC=0[LOCATOR]FILE=/home/test/.location.iniHOST=127.0.0.1PORT=42581ALTERNATE_LOCATORS=(HOST=127.0.0.1:PORT=42582,HOST=127.0.0.1:PORT=42583) Windows中的DSN设置Windows中可通过ODBC数据源管理器添加或设置DSNFigure31-3Creating new data sourceFigure31-4ODBC driver configuration各项详细说明如下关键字说明DSN数据源名称HOST HOST IP地址或名称PORT连接端口号UID用户IDCS_MODE 设置以dedicated模式连接或以shared模式连接未设置时default模式取决于listener的configuration(DEFAULT_CS_MODE)ALTERNATE_SERVERS发生failover时尝试连接的服务器列表以逗号()区分不使用failover功能时ALTERNATE_SERVERS设置为空白CONNECTION_RETRY_COUNT连接失败时尝试重连服务器的次数CONNECTION_RETRY_DELAY连接失败时尝试重连的服务器时间间隔(单位:秒)FAILOVER_TYPE ●CONNECTION:连接失败时连接至ALTERNATE_SERVERS●SESSION:连接失败或语句执行中连接中断时连接至ALTERNATE_SERVERS后恢复语句断开连接时如没有进行中的事务failover后执行进行中的statement关键字说明FAILOVER_GRANULARITY ●Non-atomic:failover过程中即使报错也继续执行failover●Atomic:failover过程中报错则failover失败DATE_FORMAT DATE类型字符串TIME_FORMAT TIME类型字符串TIME_WITH_TIME_ZONE_FORMAT TIME WITH TIME ZONE类型字符串TIMESTAMP_FORMAT TIMESTAMP类型字符串TIMESTAMP_WITH_TIME_ZONE_FORMAT TIMESTAMP WITH TIME ZONE类型字符串CHAR_LENGTH_UNITS SQLBindParameter()中ParameterType为SQL_CHAR时的ColumnSize单位●BYTE,OCTETS:以byte为单位●CHAR,CHARACTERS:以字符为单位LOCALITY_AWARE_TRANSACTION GLOBAL CONNECTION使用与否●0:不使用GLOBAL CONNECTION ●1:使用GLOBAL CONNECTIONUSE_GLOBAL_SESSION GLOBAL SESSION使用与否关键字说明●0:不使用GLOBAL SESSION●1:使用GLOBAL SESSIONLOCALITY_GROUP_POLICY设置可使用GLOBAL CONNECTION时没有可选择的group或有两个以上可选择的group时选择哪个group●0:任意选择●1:依次选择LOCALITY_GROUP_PATH设置中的group无法使用所有LOCALITY_GROUP_PATH中的group时选择任意group●2:依次选择按照每次连接驱动的group顺序选择LOCALITY_GROUP_PATH 使用GLOBAL CONNECTION时可选择的group不是一个时指定选择的group的目录各个group以逗号()区分例:G1G2G3LOCALITY_MEMBER_POLICY使用GLOBAL CONNECTION时决定选择被选择地group中的成员的方法●0:DML:MASTER/SELECT:MASTER●1:DML:ANY/SELECT:ANY●2:DML:MASTER/SELECT:ANY●3:DML:MASTER/SELECT:SLAVE关键字说明●4:依次选择LOCALITY_MEMBER_PATH设置中的成员无法使用所有LOCALITY_MEMBER_PATH中的成员时选择被选择的group的MASTERLOCALITY_MEMBER_PATH 使用GLOBAL CONNECTION时在所选的group中指定要使用的成员的目录各个成员以逗号()区分例:G1N1,G2N1,G3N1,G1N2,G2N2,G3N2LOCATOR_HOST glocator ip address LOCATOR_PORT glocator port number LOCATOR_CONNECTION_TIMEOUT Connection timeout with glocator(second) ALTERNATE_LOCATORS无法从glocator获得响应时使用ALTERNATE_LOCATORS获取访问信息TRACE是否在ODBC API使用trace●0:不使用trace●1:使用traceTRACEFILE Trace文件名输入到相对路径时执行程序的当前目录成为标准默认值为'odbc_trace.log'TRACE_POLICY Trace策略默认值为DEFAULT关键字说明●DEFAULT:同时记录函数参数和结果●ERROR:函数失败时记录日志DOT_NET_FOR_ODBC决定是否将ODBC用于.NET Framework用途●0:不改变用途●1:SQLGetDescField()和SQLColAttribute()中将SQL_DESC_BASE_COLUMN_NAME,SQL_DESC_NAME属性替换为SQL_DESC_LABELTable31-5DSN配置关键字2.3GLOBAL CONNECTION集群环境支持应用程序可以选择符合处理查询的节点后执行的GLOBAL CONNECTION功能设置仅在PROTOCOL为TCP时才可使用GLOBAL CONNECTION此时需要在设置LOCALITY_AWARE_TRANSACTION属性值的同时设置LOCATOR文件或LOCATOR服务器使用global session时需要将USE_GLOBAL_SESSION属性值设置为1使用DSN时的.odbc.ini[SUNDB]PROTOCOL=TCPHOST=192.168.0.1PORT=22581UID=TESTPWD=testLOCALITY_AWARE_TRANSACTION=1LOCATOR_DSN=LOCATOR[LOCATOR]FILE=/home/sundb/.location.ini使用连接字符串时SQLDriverConnect(dbc,NULL,(SQLCHAR*)"PROTOCOL=TCP;HOST=192.168.0.1;PORT=22581;UID=TEST;PWD=test;LOCA LITY_AWARE_TRANSACTION=1;LOCATOR_HOST=192.168.0.2;LOCATOR_PORT=42581",SQL_NTS,NULL,0,NULL,SQL_DRIVER_NOPROMPT);GLOBAL CONNECTION的处理过程Figure31-5Basic steps of applying GLOBAL CONNECTION 1.SQLAllocHandle(DBC)分配connection handle连接用户输入服务器信息的服务器并获取集群系统的信息后通过LOCATOR文件或LOCATOR 服务器建立集群系统信息并连接集群系统的所有节点3.SQLAllocHandle(STMT)向连接的所有节点分配各个statement4.SQLPrepare在连接的所有节点准备执行SQL5.SQLExecute如未建立集群系统信息应用程序可通过LOCATOR文件或LOCATOR服务器建立集群系统信息并连接集群系统的所有节点在集群添加节点后访问新的节点时在该节点同样生成其他节点的所有statement并准备执行SQL如已建立sharding key信息应用程序使用sharding key信息选择合适的节点后执行查询如未建立sharding key信息应用程序从任意服务器建立该SQL的sharding key信息后选择合适的节点并执行查询所选节点发生故障时除该节点外再重新选择合适的节点后执行查询SQLExecute后sharding信息发生变更则删除已建立的sharding key信息SQLExecute后添加/删除集群节点等集群系统信息发生变更则删除已建立的集群系统信息6.SQLFetch从执行SQL的节点获取数据7.SQLCloseCursor在执行SQL的节点关闭游标8.SQLFreeHandle(STMT)在所有已连接的节点上解除statement解除与所有节点的连接10.SQLFreeHandle(DBC)解除connection handleGLOBAL CONNECTION异常处理使用GLOBAL CONNECTION时运行中所选节点发生故障时根据事务发生及SELECT进行与否如下进行操作●没有事务的情况没有事务的情况下所选节点发生故障时在ODBC内部选择其他节点并执行对应查询虽然所选节点发生了故障但由其他节点正常执行因此不向用户报错●有事务或SELECT进行时发生事务或SQLFetch()进行时所选节点发生故障时ODBC无法再进行当前操作因此返回19068(Retry the transactional operations)错误发生19068错误时用户需要重新执行对应事务或SELECTif(!SQL_SUCCEEDED(SQLPrepare(sStmt,(SQLCHAR*)"INSERT INTO T1VALUES(?)",SQL_NTS))){goto stmt_error;}trans_retry:if(!SQL_SUCCEEDED(SQLExecute(sStmt))) {SQLGetDiagRec(SQL_HANDLE_STMT,sStmt,1,sSQLState,&sNativeError,sMessageText,sizeof(sMessageText),&sTextLength);if(sNativeError==19068){goto trans_retry;}goto stmt_error;}if(!SQL_SUCCEEDED(SQLPrepare(sStmt,(SQLCHAR*)"SELECT*FROM T1WHERE C1=?",SQL_NTS))){goto stmt_error;}trans_begin:sReturn=SQLExecute(sStmt);if(sRetrun==SQL_ERROR){SQLGetDiagRec(SQL_HANDLE_STMT,sStmt,1,sSQLState,&sNativeError,sMessageText,sizeof(sMessageText),&sTextLength);if(sNativeError==19068){goto trans_retry;}goto stmt_error;}while(1){sReturn=SQLFetch(sStmt);if(sReturn==SQL_NO_DATA){SQLCloseCursor(sStmt);break;}else if(sReturn==SQL_ERROR){SQLGetDiagRec(SQL_HANDLE_STMT,sStmt,1,sSQLState,&sNativeError,sMessageText,sizeof(sMessageText),&sTextLength);if(sNativeError==19068){goto trans_retry;}goto stmt_error;}...}COMMIT或ROLLBACK事务时COMMIT事务时所选节点发生故障时ODBC通过其他节点查看事务是否在所选节点发生故障之前COMMIT如果所选节点发生了故障但事务正常COMMIT时不返回错误而且在事务未COMMIT的情况下所选节点发生故障时返回19068(Retry the transactional operations)错误发生19068错误时用户要重新执行该事务ROLLBACK事务时如果所选节点发生故障ODBC不报错因为由于节点故障该事务已经被ROLLBACKif(!SQL_SUCCEEDED(SQLSetConnectAttr(sDbc,SQL_AUTOCOMMIT,(SQLPOINTER)SQL_AUTOCOMMIT_OFF,0))){goto dbc_error;}if(!SQL_SUCCEEDED(SQLPrepare(sStmt,(SQLCHAR*)"INSERT INTO T1VALUES(?)",SQL_NTS))){goto stmt_error;}trans_retry:if(!SQL_SUCCEEDED(SQLExecute(sStmt))){SQLGetDiagRec(SQL_HANDLE_STMT,sStmt,1,sSQLState,&sNativeError,sMessageText,sizeof(sMessageText),&sTextLength);if(sNativeError==19068){goto trans_retry;}goto stmt_error;}if(!SQL_SUCCEEDED(SQLEndTran(SQL_HANDLE_DBC,sDbc,SQL_COMMIT))){SQLGetDiagRec(SQL_HANDLE_DBC,sDbc,1,sSQLState,&sNativeError,sMessageText,sizeof(sMessageText),&sTextLength);if(sNativeError==19068){goto trans_retry;}goto stmt_error;}GLOBAL CONNECTION约束事项●为了选择符合查询的节点需要使用SQLPrepare()和SQLExecute()使用GLOBAL CONNECTION查找符合查询的节点时需要使用SQLPrepare()和SQLExecute()SQLExecDirect()中没有查找符合查询的节点的信息因此选择节点取决于LOCALITY_GROUP_POLICY和LOCALITY_MEMBER_POLICY属性●COMMIT或ROLLBACK事务时要使用SQLEndTran()使用GLOBAL CONNECTION时通过SQL语句执行COMMIT或ROLLBACK则无法检测到事务状态变化COMMIT或ROLLBACK事务时必须使用SQLEndTran()●Global session不支持SQL语句中的Data Definition Language(DDL)。
神通数据库hint使用手册

表、列和文件的名字。
employees;
【注意】:根据某些具体的要求, CREATE USER tom IDENTIFIED BY
有些由使用者提供的元素可能要 a8M9j7
求使用大写或者大小写混合的形
式。此时,应当根据实际的要求输
入。
ii
〖阅读对象〗....................................................................................................................................i 〖内容简介〗....................................................................................................................................i 〖手册构成〗....................................................................................................................................i 〖相关文档〗....................................................................................................................................i 〖手册约定〗....................................................................................................................................i 第 1 章 功能概述.......................................................................................................................4 第 2 章 hint 语法语义 ...............................................................................................................5
神通数据库OGDCProvider使用手册

神通数据库OGDCProvider使用手册版本7.0天津神舟通用数据技术有限公司2014年2月目录OGDCProvider使用手册 (1)版本7.0 1第1章神通OGDCProvider简介 (1)1.1OGDC简介 (1)1.2神通OGDCProvider简介 (1)第2章神通OGDCProvider使用 (2)2.1神通OGDCProvider用法简介 (2)2.2神通OGDCProvider平台支持 (2)2.3神通OGDCProvider支持的OGDC接口 (2)2.3.1OgdcDataSource类接口 (2)2.3.2OgdcDatasetVector类接口 (3)2.3.3OgdcRecordset类接口 (5)2.3.4OgdcFeature类接口 (6)2.3.5OgdcDatasetRaster类接口 (7)2.3.6OgdcHelper类接口 (8)第1章神通OGDCProvider简介1.1O GDC简介OGDC,全称为Open Geospatial Database Connectivity,中文名称为开放式空间数据库互访开发标准接口,是为了实现不同格式空间数据库互联互访而基于GDB-CLI 标准的开放式空间数据库互访开发标准接口。
基于OGDC 标准接口开发的应用程序,不依赖于任何空间数据库及数据格式,以统一的方式来访问所有的空间数据,实现对空间数据的读写,从而达到空间数据的互操作。
1.2神通OGDCProvider简介神通数据库为OGDC提供了基于自己数据格式Provider 的动态链接库——SuOGDCProviderST600.odx,位于神通数据库安装目录下的OGDC文件夹下。
通过OGDC加载该动态库文件即可调用OGDC 接口访问神通数据库。
第2章神通OGDCProvider使用2.1神通OGDCProvider用法简介方法一,将SuOGDCProviderST600.odx 动态库复制到OGDC 安装目录的下列文件夹:"安装路径:\Builds\32_x86_win_vc6\BinD\"和"安装路径:\Builds\32_x86_win_vc6\Bin\"。
Informatica PowerExchange 9.5.1 for DB2 UDB 安装和使用手册

Informatica PowerExchange 9.5.1 for DB2安装和使用手册2014-01-23杨晓东QQ: 734471791目录致读者 (4)本手册涉及的软件和配置说明 (5)DB2 Server安装和配置 (6)DB2环境要求 (6)检测是DB2是否已经打开归档 (6)未打开的状态 (7)打开的状态 (8)设置DB2为归档模式(2种方式) (8)命令行 (8)图形化 (9)创建Capture Catalog表 (18)初始化Capture Catalog表 (19)创建CDCDEMO源表 (19)启动CDCDEMO源表的CDC Change(2种方式) (20)命令行 (20)图形化 (20)PWX Server安装配置 (21)安装PWX Listener (21)配置dbmover.cfg文件 (21)启动PWX Listener (22)测试PWX连通性 (22)PWX Client端安装配置 (23)安装PWX Client 和配置Dbmover.cfg文件 (23)配置Dbmover.cfg (23)测试PWX连通性 (23)PWX Navigator中注册CDC表 (24)PWX/PWC CDC RT模式任务设置 (29)导入源表结构 (29)创建Mapping (30)创建PWX DB2LUW CDC Real Time类型的Application 连接 (31)创建Workflow,并配置Session属性 (32)执行Workflow,并验证CDC数据的同步结果 (33)PWX/PWC CDC Continuous RT模式任务设置 (34)Mapping设计 (34)配置dbmover.cfg 文件 (34)配置pwxccl.cfg 文件 (34)启动PWX Logger程序 (35)创建PWX DB2LUW CDC Real Time类型的Application 连接 (35)创建Workflow,并配置Session属性 (37)执行Workflow,并验证CDC数据的同步结果 (38)PWX/PWC Batch模式任务设置 (39)Mapping设计 (39)配置dbmover.cfg 和pwxccl.cfg (39)启动PWX Logger程序 (39)创建PWX DB2LUW CDC Change类型的Application 连接 (39)创建Workflow,并配置Session属性 (40)执行Workflow,并验证CDC数据的同步结果 (41)常用命令 (42)启动PWX Listener (42)停止PWX Listener (42)测试PWX连通性 (42)启动PWX Logger程序 (42)停止PWX Logger程序 (43)停止PWX RT程序 (43)致读者子曰:“三人行,必有我师焉。
神州数码数据库安全审计系统安装配置手册说明书

2022年4月7目录1前言 (3)1.1 (3)1.2 (3)2 (4)2.1 (4)2.2 (5)3WEB UI (6)3.1 (7)3.2系统UI访问页面使用需求开发的端口 (7)3.3云数据库安全审计模式配置 (8)3.3.1开启接口审计功能 (8)3.3.2Agent (8)3.3.3Agent (10)3.3.4 (11)3.3.5 (11)3.3.6 (13)3.3.7 (17)3.3.8策略规则配置示例 (18)3.4 (32)3.4.1 (32)3.4.2 (34)4AGENT (35)5附录:防火墙代理模式配置手册 (44)1前言本手册主要介绍神州数码数据库安全审计系统的安装、配置、使用和管理。
通过阅读本文档,用户可以了解该系统的主要功能,并根据实际应用环境进行安装和配置。
1.1通过阅读本文档,能够快速地部署实施神州数码数据库安全审计系统,配置管理员达到对该系统主体功能熟悉和理解,有效地管理该防护设备,实现高效可靠的统一管理。
1.2本用户手册适用于具有基本网络、安全知识的系统管理员和运维人员。
2本章就神州数码数据库安全审计系统的系统架构、部署模式以及所涉及的基本概念进行简单介绍。
本章内容主要包括:产品概述:介绍产品的主要功能和适用对象。
部署模式:介绍系统在应用场景中的部署示意图。
2.1神州数码数据库安全审计系统是主动、实时监控数据库安全,集应用压力分析与访问控制为一体的专业产品。
在数据库安全审计方面系统采用有效的数据库安全审计方式,针对数据库漏洞攻击、风险操作、SQL注入等数据库风险操作行为,通过不同的审计规则发生记录和告警。
面向企业级用户,集应用压力分析与SQL监控审计为一体的产品。
它以旁路的方式部署在网络中,不影响网络的性能。
具有实时的网络数据采集能力、强大的审计分析功能以及智能的信息处理能力。
通过使用该系统,可以实现如下目标:分析数据库系统压力。
可审计Oracle、MySQL、SQL Server、HBase、Hive、Sybase、DM7等多种数据库。
神通数据库安装手册

神通数据库安装手册版本7.0天津神舟通用数据技术有限公司2010年1月版权声明神通数据库是天津神舟通用数据技术有限公司开发的数据库管理系统软件产品。
神通数据库的版权归天津神舟通用数据技术有限公司,任何侵犯版权的行为将追究法律责任。
《神通数据库SQL语言参考手册》的版权归天津神舟通用数据技术有限公司所有。
未经天津神舟通用数据技术有限公司的书面准许,不得将本手册的任何部分以任何形式、采用任何手段(电子的或机械的,包括照相复制或录制)、或为任何目的,进行复制或扩散。
(c)Copyright 2003 天津神舟通用数据技术有限公司。
版权所有,翻制必究。
天津神舟通用数据技术有限公司不对因为使用该软件、用户手册或由于该软件、用户手册中的缺陷所造成的任何损失负责。
阅读指南〖阅读对象〗本手册是为使用神通数据库管理系统的用户编写的。
使用神通数据库的用户在安装神通数据库之前应当认真阅读本手册,以便熟悉安装程序的使用,进行神通数据库管理系统的安装。
〖内容简介〗本手册介绍了如何使用神通数据库安装程序进行神通数据库的安装,目的是让用户对神通数据库的安装过程有一个全面的了解,方便用户使用安装程序。
神通数据库安装程序采用Java语言编写,具有跨平台性,可以在Windows 、Linux等多种系统平台上运行,用户在一个操作系统平台上熟悉了安装程序的使用后,可以很容易的在其他系统平台上使用安装程序。
系统要求介绍了神通数据库管理系统要求的硬件、操作系统资源及其运行环境。
服务器端的安装和客户端的安装分别介绍了如何进行数据库服务器端和客户端的安装,包括Windows 版本和Linux 版本,包含有大量的图片说明。
〖手册构成〗本手册由3部分组成:1.第1章,“系统要求”,介绍了安装神通数据库管理系统要求的硬件资源以及操作系统资源。
2.第2章,“服务器端的安装”,介绍了如何使用安装程序安装数据库服务器端。
3.第3章,“客户端的安装”,介绍了如何使用安装程序安装数据库客户端。
神通数据库sql语句的使用

神通数据库sql语句的使用全文共四篇示例,供读者参考第一篇示例:神通数据库是一个功能强大的关系型数据库管理系统,它提供了丰富的SQL语句来实现数据的查询、更新、删除等操作。
SQL (Structured Query Language)是用于与数据库通信的标准化语言,是数据库管理系统的核心。
在神通数据库中,SQL语句的使用是非常重要的,它可以帮助用户实现对数据库中数据的高效管理。
下面我们来详细介绍一些常用的SQL语句及其用法。
1. 查询数据:SELECT语句是SQL中最常用的语句之一,它用于从数据库中检索数据。
可以使用以下语句查询表中所有数据:```sqlSELECT * FROM table_name;```这条语句会返回指定表中的所有数据,其中"*"表示所有列。
如果想查询特定列的数据,可以将列名替换成具体列名。
2. 更新数据:UPDATE语句用于更新数据库中的数据。
可以使用以下语句更新表中指定条件的数据:```sqlUPDATE table_name SET column_name = new_value WHERE condition;```这条语句会将符合条件的数据的指定列更新为新的值。
5. 排序数据:ORDER BY语句用于对数据进行排序。
可以使用以下语句按照指定列对数据进行降序排序:这条语句会按照指定列的值,对数据进行降序排序。
8. 连接表:JOIN语句用于将多个表连接在一起。
可以使用以下语句连接两个表:9. 聚合数据:聚合函数如SUM、AVG、COUNT等用于对数据进行聚合计算。
可以使用以下语句计算表中某列的总和:SQL语句在神通数据库中是非常重要的,它提供了丰富的功能,可以帮助用户对数据库中的数据进行高效的管理。
通过熟练掌握SQL 语句的使用,用户可以更加方便地进行数据库操作,提高工作效率。
神通数据库提供了完善的SQL语句支持,用户可以根据自己的需求灵活地进行数据查询、更新、删除等操作,实现数据库管理的自动化和高效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
神通数据库
参数配置工具手册
版本6.0
天津神舟通用技术有限公司
2010年1月
版权声明
神通数据库是天津神舟通用技术有限公司开发的数据库管理系统软件产品。
神通数据库的版权归天津神舟通用技术有限公司,任何侵犯版权的行为将追究法律责任。
《神通数据库SQL语言参考手册》的版权归天津神舟通用技术有限公司所有。
未经天津神舟通用技术有限公司的书面准许,不得将本手册的任何部分以任何形式、采用任何手段(电子的或机械的,包括照相复制或录制)、或为任何目的,进行复制或扩散。
(c)Copyright 2010 天津神舟通用技术有限公司。
版权所有,翻制必究。
天津神舟通用技术有限公司不对因为使用该软件、用户手册或由于该软件、用户手册中的缺陷所造成的任何损失负责。
阅读指南
〖阅读对象〗
本手册是为使用神通数据库管理系统的用户编写的。
使用神通数据库的用户在安装神通数据库之前应当认真阅读本手册,以便熟悉安装程序的使用,进行神通数据库管理系统的安装。
〖内容简介〗
本手册介绍了如何使用神通数据库系统参数配置工具对神通数据库运行参数进行配置,目的是让用户该工具有一个全面的了解,方便用户配置神通数据库参数。
神通数据库系统参数配置工具采用Java语言编写,具有跨平台性,可以在Windows 、Linux 等多种系统平台上运行,用户在一个操作系统平台上熟悉了该工具的使用后,可以很容易的在其他系统平台上使用该工具。
〖相关文档〗
使用本手册时可以参考神通数据库的手册集,手册集包含以下文档:
《神通数据库安装手册》
《神通数据库备份恢复工具使用手册》
《神通数据库DBA管理工具使用手册》
《神通数据库系统管理员手册》
《神通数据库嵌入式SQL语言手册》
《神通数据库交互式SQL查询工具使用手册》
《神通数据库JDBC开发指南》
《神通数据库过程语言手册》
《神通数据库OLEDB/ADO用户手册》
《神通数据库迁移工具使用手册》
《神通数据库ODBC程序员开发指南》
《神通数据库审计管理》
《神通数据库审计工具使用手册》
《神通数据库性能监测工具使用手册》
《神通数据库作业调度工具使用手册》
〖手册约定〗
本手册遵循以下约定:
所有标题均使用黑体字。
如果标题后跟有“【条件】”字样,说明该标题下正文所要求的内容只是在一定条件下必须的。
【注意】的意思是请读者注意那些需要注意的事项。
【警告】的意思是请读者千万注意某些事项,否则将造成严重错误。
【提示】的意思是提供给读者一些实用的操作技巧。
对于手册中出现的正文和程序代码,遵循如下约定:
第1章神通数据库系统参数配置
1.1参数配置工具介绍
参数配置工具主要针对静态参数使用。
参数主要是那些修改后需要重启数据库才能生效的参数。
运行程序,首先进入到选择要进行参数配置的数据库界面,如图1-1所示。
图1-1 选择数据库
选择数据库后,进入参数【配置类型】选择界面,如图1-2所示。
图1-2参数配置
参数配置方式主要有当前配置、智能配置和高级配置三种。
当前配置:全部参数使用当前值;如果是第一次进行配置,则所有参数具有缺省值。
智能配置:引导用户配置系统参数。
高级配置:将参数按功能分组,为用户提供灵活的参数配置方式。
1.2配置方式使用方法
选择〈当前配置〉标签,程序将显示运行参数界面,如图1-3所示,其中显示数据库系统运行时的参数并可对其进行设置。
图1-3 配置结果
点击〈自动监测&优化〉按钮后,会根据机器的内存设置BUF_DA TA_BUFFER_PAGE 设置相应的值。
单击〈完成〉后,在“更新配置文件”复选框被勾上的情况下将产生系统配置文件使这些参数生效,另需注意,若将“输出到配置文件”一栏中的勾去掉,则该参数不会被输出到配置文件,其值取默认值。
在运行参数表格中双击鼠标按键,将弹出相应参数的选项信息对话框,用户可以从中更清楚地了解到相关参数的信息,如果参数可以修改的话可以在对话框中对其进行设置,如图1-4所示。
图1-4 参数详细信息
若选择<智能配置>,则首先进入数据库内存配置面板,依据可用内存和负载大小向用建议不同数据缓存区大小,如图1-5所示。
图1-5
点击<下一步>,进入连接配置页面;进程优化配置会依据负载大小和服务器配置向用户建议一个进程数,如图1-5所示。
图1-6
点击<下一步>,进入兼容配置界面,通过这个功能可以帮助用户配置成兼容其他数据库的配置,如图1-7所示。
图1-7
点击<下一步>,进入性能优化配置页面;存储调优会根据性能监测数据给出优化建议,如图1-8所示。
图1-8
若选择<高级配置>,则会将参数按功能分组,为用户提供灵活的参数配置方式,如图1-9所示,配置完成后,同样会进入〈配置结果〉页面。
图1-9 高级配置界面
10。