新建服务
新建Mysql外部表
目标库是mysql的数据库名目标表是数据库库中的表名,列名要对应表中的列
3.3.1.11. 同义词 ¶
同义词,数据库方案对象的别名,经常用于简化对象访问和提高对象访问的安全性。同义词只有在oracle兼容时才会在对象树上显示。
3.3.1.12. 数据类型 ¶
KingbaseES有着丰富的本地数据类型可用。用户也可以使用 ` CREATE TYPE 命令为 KingbaseES增加新的数据类型
类型:
-
对象或组合类型
组合类型:组合类型由一个属性名和数据类型的列表指定。如果属性的数据类型是可 排序的,也可以指定该属性的排序规则。组合类型本质上和表的行类型相 同,但是如果只想定义一种类型,使用 CREATE TYPE避免了创建一个实际的表。单 独的组合类型也是很有用的,例如可以作为函数的参数或者返回类型
对象类型:对象类型和组合类型在定义和使用上都有很多相似性,可以认为对象类型是组合类型的增强。不同于组合类型的是,对象类型除了支持组合类型的行记录结构外,还支持声明和定义一些内部方法,并在创建相应的对象后在具体的对象上使用这些方法。
-
枚举类型:枚举类型需要 一个带引号的标签构成的列表,每一个标签长度必须不超过 NAMEDATALEN字节(在标准的 KingbaseES编译中是 64 字节)。 可以创建具有零个标签的枚举类型,但是在使用 ALTER TYPE 添加至少一个标签之前,不能使用这种类型来保存值。
-
范围类型:范围类型的子类型可以 是任何带有一个相关的 B 树操作符类(用来决定该范围类型值的顺序)的类型。
-
嵌套表类型:
嵌套表适用于以下几种情况:
-
元素数不确定;
-
索引值可能出现不连续的情况;
-
必须单独删除或更新某些元素的情况;
-
嵌套表可以看做是index为int的关联数组。
-
可变数组类型:与嵌套表不同,可变数组在定义的时候需要指定最大元素个数,使用中不能超过该限制
嵌套表适用于以下几种情况:
-
元素数有最大限制;
-
索引值必须是连续的情况;
-
Shell类型:shell 类型仅仅是一种用于后面要定义的类型的占位符
3.3.1.13. 外部链接 ¶
外部链接,在此数据库中建立一个数据库连接,使得您可以在此数据库中操作另一个数据库。
-
新建外部链接 :
驱动名称(ODBC):为KingBaseES的ODBC驱动名称。
3.3.2. 表空间 ¶
表空间允许在文件系统里定义那些代表数据库对象(例如表和索引)的数据文件存放的位置。 一旦创建了表空间,那么就可以在创建数据库对象的时候引用它。一个数据库可以有一个或多个表空间,创建数据库时自动创建系统表空间,并为缺省的默认表空间。一个表空间只隶属于一个数据库,只有在创建了数据库之后才能创建属于它的表空间。
隶属于一个数据库的表空间用于存储该数据库的数据库对象。在创建数据库对象时可以使用TABLESPACE子句指明该对象所使用的表空间;没有给出 TABLESPACE 子句,则这些对象使用缺省表空间。
-
新建表空间 :新建表空间支持透明加密,用户可以通过基本属性中选项勾选或者“create tablespace... with(ENCRYPTION = true);”语法来指定。
路径:表空间路径为绝对路径。
已使用大小:显示表空间目录下已存数据文件大小。
3.3.3. 管理 ¶
3.3.3.1. 系统参数 ¶
KingbaseES的系统参数列表可视化及修改功能,包括:
-
文件位置 :文件的路径。
-
连接认证 :验证设置、安全选项、语句行为、默认语言、动态加载、其他默认。
-
资源使用 :内存、磁盘、内核资源、回收延迟、后台写、异步行为、自动回收、锁管理。
-
事务日志 :设置、检查点、归档。
-
数据复制 :复制、发送服务器、主服务器、备服务器。
-
查询优化 :方法配置、Cost、常规选项、其它选项。
-
运行日志 :路径、时机、内容。
-
统计信息 :监控、查询和索引。
-
兼容相关 :SQL兼容选项、向前兼容、其他兼容。
-
其他选项 :错误处理、预设选项、开发选项、进程名。
3.3.3.2. 会话管理器 ¶
列表展示当前数据库服务器存在的所有连接会话及会话的详细信息,可通过点击“ 断开” 按钮中断被选中的连接。
3.4. 锁管理器 ¶
列表展示当前数据库服务器存在的所有锁。
3.4.1. 备份 ¶
3.4.2. 逻辑备份 ¶
逻辑备份可以将数据库对象的结构和数据导出到二进制文件或sql文件,方便数据库在不同机器上的迁移,备份入口分两种,一种选择树形结构节点如表,点击工具栏中备份按钮,可以备份当前模式下的所有树形结构。
另一种直接备份数据库,双击树形结构备份管理,根据所需的备份内容勾选下方复选框。
3.4.3. 逻辑还原 ¶
逻辑还原可以将指定备份文件的任意数据库对象导入到指定数据库里,根据所需的还原要求勾选下方复选框。
3.5. 计划任务 ¶
计划任务(DBMS_SCHEDULER)提供调度和管理计划任务的功能。基于后台进程来实现自动作业功能。通过kdb_schedule插件提供了DBMS_JOB和DBMS_SCHEDULER包,其中定义了自动作业功能的相关函数
3.5.1. 程序 ¶
新建程序
填写程序的名称,选择程序的类型,程序的动作,比如创建一张表,数据库连接串,格式:user=system dbname=test port=54321 password=123;数据库名称,以及是否可用
3.5.2. 计划 ¶
新建计划:
填写计划名称,开始时间,开始时间可以是函数比如now(),或者具体时间例如2022-3-25 12:58:30 ,时间间隔参考如下
参数 |
描述 |
---|---|
FREQ |
重复时间的类型。 这里有yearly、monthly、weekly、daily、hourly、minutely |
INTERVAL |
重复的频率,默认值是1。 |
BYMONTH |
指定月份。 |
BYMONTHDAY |
指定一月中的某一天。 |
BYHOUR |
指定一天中的某一个小时。 |
BYBYMINTUE |
指定一个小时中的某一分。 |
BYSECOND |
指定一分钟内的某一秒。 |
结束时间格式同开始时间
3.5.3. 任务 ¶
新建任务:
填写任务名称,程序名称选择之前新建的程序,计划名称选择之前新建的计划,选择任务的类型和是否启用
编辑任务:可以改变任务是否启用
执行任务:在任务上点击鼠标右键,可以立即执行选择的任务。
3.6. 用户管理 ¶
3.6.1. 用户创建和编辑 ¶
KingbaseES每个数据库服务器都包含一个数据库用户的集合。这些用户是和那些在同一个服务器上运行的操作系统的用户相独立的。用户拥有数据库对象(比如说,表)以及可以把这些对象的权限赋予其它用户,这样就能控制谁可以访问哪些对象。用户也可以拥有系统权限。
数据库用户从概念上与操作系统用户是完全无关的。在实际使用中把它们对应起来可能比较方便,但不是必须的。数据库用户名在整个数据库集群中是全局的(而不是每个数据库不同)。创建一个用户,使用 SQL 命令 CREATE USER。
更多数据库用户和权限的相关信息,请查看用户。
-
新建用户 :可以为数据库新创建一个用户,并为其分配系统权限及对象权限。
-
新建用户有两种方式:
-
第一种为右键点击“ 用户 ”文件夹->选择“ 新建用户 ”。
第二种为选中“ 用户 ”文件夹->点击工具栏的“ 用户 ”。
设置时间、过期时间:可勾选设置时间,以自定义用户过期时间。
连接数限制:可根据您的需要自定义连接数,-1为无限制。
系统权限 :
-
SUPERUSER:“超级用户”,它可以越过数据库内的所有访问限制。“超级用户”状态很危险并且之应该在确实需要时才用。要创建一个新“超级用户”,您必须自己是一个超级用户。
-
CREATEDB:指定该用户是否被允许创建新的数据库。
-
CREATEROLE:指定该用户是否被允许创建新的角色,同时可以修改和删除角色。
-
LOGIN:是否被允许登录,也就是在客户端连接期间该角色是否能被给定为初始会话认证名称。
-
REPLICATION:这些子句决定一个角色是否为复制角色。角色必须具有这个属性(或者成为一个超级用户)才能以复制模式(物理复制或者逻辑复制)连接到服务器以及创建或者删除复制槽。一个具有REPLICATION属性的角色是一个具有非常高特权的角色,并且只应被用于确实需要复制的角色上。
对象权限 :
-
ALL:授予对象类型的所有可用权限。
-
CREATE:对于数据库,允许在数据库中创建新的模式和发布。
对于模式,允许在模式中创建新对象。要重命名一个现有的对象,您必须拥有对象和对包含的模式有这个特权。
-
TEMPORARY:允许在使用数据库时创建临时表。
-
TEMP:允许在使用数据库时创建临时表。
-
CONNECT:允许连接到此数据库。
-
USAGE:对于模式,允许访问模式中包含的对象。本质上,这允许被授予者在模式中“查找”对象。没有这个权限,仍然可以看到对象名,例如通过查询系统目录。此外,在撤销此权限之后,现有会话可能具有先前执行此查找的语句,因此这不是防止对象访问的完全安全的方法。
对于序列,允许使用currval和nextval函数。
-
SELECT:允许进行查询操作。
-
INSERT:允许进行插入操作。
-
UPDATE:允许进行更新操作。
-
TRUNCATE:允许进行删除操作。
-
REFERENCES:允许建立外键关联操作。
-
TRIGGER:允许创建触发器。
3.6.2. 角色创建和编辑 ¶
角色是一组权限的集合,使用角色是让权限管理的工作更加简单有效。数据库管理员可以将角色授予用户或者其它角色,有创建角色(CREATE ROLE)的系统权限的用户可以将自己创建的角色授予给用户和其它角色。
-
新建角色 :可以为数据库新创建一个角色,并为其分配系统权限及对象权限。
3.7. 数据管理 ¶
3.7.1. 结果集的编辑 ¶
您可以进行内联编辑(请参阅下面的 内联编辑 部分)以及在单独的编辑器中打开单元格的内容(请参阅下面的 单元格编辑器 部分)。
当您使用本节中描述的步骤对数据进行任何更改并保存它们时,这些更改将应用于数据库本身。在保存更改之前,您可以预览系统发送到数据库以在那里应用更改的 SQL 脚本。要查看 SQL 脚本,请在进行更改之后保存或放弃它们之前,单击底部工具栏中的“ Script” 按钮。预览更改窗口打开,您只能在其中查看 SQL 脚本并在必要时复制它:
-
内联编辑
内联编辑是在单元格中修改内容。要内联编辑单元格,请在表格中执行以下操作之一:
-
双击单元格。
-
单击单元格设置焦点,然后按Enter。
-
该单元格现在可编辑,您可以直接选中更改其值。
要将单元格值设置为 NULL,请右键单击该单元格,然后单击上下文菜单上的“ 编辑 ”->“ 设为空(NULL)” 。
要保存更改,请单击顶部工具栏中的 “保存” 按钮。要放弃更改,请单击顶部工具栏中的 “取消” 按钮。
注意:只有当您在单元格中进行更改时, “保存” 和 “取消” 按钮才可编辑。
-
单元格编辑器
要使用单独的编辑器编辑单元格中的数据,请执行以下操作之一:
-
单击单元格将焦点设置到它,然后按下“Shift+Enter”
-
单击顶部工具栏中的“在单独的对话框/编辑器中编辑单元格”按钮。
对于 CLOB/BLOB 数据格式的单元格,此操作将在新选项卡中打开单元格的内容:新选项卡中分Text、Binary、JSON、XML不同tab,可根据需求选择相应tab进行编辑,然后“Ctrl+S”跳转回原编辑器,点击 “保存” 进行保存。
对于除 CLOB/BLOB 之外的所有其他格式,此操作会打开单元格的属性窗口:该窗口在“ Column Info” 部分显示列的属性,并提供“ 值” 部分,您可以在其中修改单元格的值。根据需要编辑值,然后单击“ 保存” 。要将值设置为 NULL,请单击“ 设置为 NULL” 。
注意:KStudio 完全支持 CLOB/BLOB 数据类型。您可以查看值、编辑它们并将它们保存回数据库。您可以在单独的编辑器中打开 CLOB/BLOB 值(按下“Shift+Enter”选定的单元格)。您可以在常规文件中保存/加载 LOB 值。KStudio 可以识别某些 BLOB 列保留图像(gif、png、jpeg、bmp)。在这种情况下,KStudio 将 LOB 内容显示为图像。按F7打开 数据查看器 浏览图像很方便。
-
添加、复制和删除行
您可以在焦点行下方添加一个空行。要添加空行,请单击顶部工具栏上的“ 添加新行” 按钮 。使用“ 内联编辑或在单独的编辑器 ”中打开单元格值以使用数据填充它们(请参阅上面的部分)。
您可以复制当前处于焦点的任何行或多行。要复制行,请突出显示一行或多行,然后单击顶部工具栏中的“ 复制当前行” 按钮。重复行出现在焦点行下方。
要删除一行或多行,请将焦点设置在行上,然后单击顶部工具栏中的“ 删除行” 按钮。这些行是红色的,这意味着它们被标记为删除,并且在您点击 “保存” 后将被删除。
要保存任何此类更改,请单击顶部工具栏上的 “保存” 按钮。要放弃更改,请单击顶部工具栏上的 “取消” 按钮。
-
复制/粘贴单元格
要将一个或多个单元格的内容以制表符分隔的格式复制到剪贴板,请按“Ctrl+C”或右键单击单元格或单元格选择,然后单击上下文菜单上的 “复制” 。然后您可以将复制的选择粘贴到电子表格编辑器(类似于 Excel)中。
KStudio提供了高级复制选项,允许配置额外的复制设置(复制列名/行号、配置分隔符和选择值格式)。要复制具有其他设置的单元格,请按“Ctrl+Shift+C”或右键单击单元格->选择上下文菜单上的“ 高级复制” 。
按下“Ctrl+V”单元格会将复制的内容粘贴到单元格中,应用适当的数据类型转换。粘贴多个单元格,可以选中粘贴位置,然后按“Ctrl+Shift+V”快捷键,或者右键打开上下文菜单,选择“ 高级粘贴” 。
3.7.2. 结果集的再过滤 ¶
您可以将自定义过滤器应用于表内容或查询结果。您可以通过多种方式过滤表中的数据。
一种方法是使用顶部工具栏旁边表格上方的过滤器字段。要过滤数据,请在字段中输入 SQL 表达式,然后单击字段旁边的应用过滤条件按钮或按Enter。
第二种方法,您可以通过上下文菜单应用现成的 SQL 表达式或 SQL 表达式模板。要选择现成的 SQL 表达式或模板,请按F11或右键单击单元格,然后单击上下文菜单上的 “过滤” ,然后选择相应的过滤条件。
第三种方法是使用列标题中的过滤器图标按单元格值过滤数据。要以这种方式过滤数据,请单击列标题中的过滤器图标,然后双击按列值过滤对话框中的单元格值:
数据动态更新。要移除过滤器,请单击编辑器顶部工具栏中的“ 移除所有过滤/排序” 按钮。
您可以保存数据库对象的当前过滤器设置,以便下次在编辑器中重新打开它时应用。要保存当前过滤器设置,请单击顶部工具栏中的“ 保存过滤器设置” 按钮。
-
高级过滤器配置:
管理数据表外观的主要工具是“ 自定义过滤” ->打开 结果集的排序/过滤设置 窗口。
结果集的排序/过滤设置窗口提供了以下功能:
-
对列内的数据进行排序
-
管理表格中列的显示
-
管理表中列的顺序
-
使用 SQL 表达式自定义排序/过滤表中的数据
另一个管理数据外观的工具是列标题。在数据表中,每个列标题都包含三个元素,每个元素都有自己的功能:数据(列)类型图标、列名称、过滤器图标和排序图标。
-
只需单击列名称或列类型,该图标就会突出显示整个列。
-
您可以单击列类型图标,然后将该列拖放到表中的不同位置。
-
您可以单击列名称,然后向右或向左拖动光标以突出显示多个列。
-
单击排序图标可让您按升序或降序对列中的数据进行排序。
-
单击过滤器图标可以按单元格值过滤数据
-
对列中的数据进行排序
您可以通过以下方式之一对列中的数据进行排序:
单击列tab中的排序图标。
该图标具有三种状态:
-
单击一次建立升序
-
再次单击会将顺序更改为降序
-
第三次单击将从列中删除排序
要按多列对数据进行排序,请逐列进行,使用“排序”图标设置顺序,需要首先对数据排序的列开始。
单击编辑器顶部工具栏中的“ 自定义过滤... ”按钮打开 结果集的排序/过滤设置 窗口。
a) 在您希望在第一轮中对数据进行排序的列旁边,使用与上述相同的三态原则设置升序或降序。
b) 在其他列中设置要在第二、第三等轮次中对数据进行排序的顺序。注意:数字 ( # ) 列表示列的初始顺序。
c) 要轻松地将排序设置从列移动到列,您可以使用“Move to top”/“Move up”/“Move down”/“Move to bottom”按钮。
要将数据排序重置为其初始状态,请单击同一窗口中的“ Reset” 按钮。
此外,要删除所有排序设置,请单击数据编辑器顶部工具栏中的“ 移除所有过滤/排序” 按钮。
-
管理数据表中列的显示。
要隐藏单个列,请右键单击该列或其中的任何单元格,然后单击上下文菜单上的“ 显示/格式” -> “隐藏列” 。要取消隐藏隐藏的列,单击“ 重置 ”按钮。
要显示或隐藏数据表中的列,请在 结果集顺序/过滤器设置 窗口中:
-
选中要在表格中查看的列旁边的复选框,然后清除要隐藏的列旁边的复选框。
-
使用窗口底部的全部显示和无显示按钮。
-
对数据表中的列进行排序
您可以通过两种方式修改数据表中列的顺序:
-
单击列标题中的图标,然后将该列拖放到新位置。
-
要按字母顺序对列进行排序,请在 结果集的排序/过滤设置 窗口(通过单击编辑器底部工具栏中的“ sort” 按钮
在 结果集的排序/过滤设置 窗口中,在列tab中,选择指定字段,然后使用移动按钮调整排列位置。
3.7.3. 日期,数据类型的显示格式 ¶
KStudio 格式化功能允许您设置数据库区域设置和更改数据源格式设置。此功能非常有用,例如,对于数据库迁移。
要更改数据格式设置,请使用主菜单中的“窗口” -> “首选项”,打开Preferences窗口,选择“Kingbase ”-> “编辑器” -> “结果集” -> “数据格式”。
在打开的 数据格式 窗口的右侧区域中,点击“ 数据源设置” ,对数据源进行选择。
-
数据格式配置文件
要创建数据格式配置文件,请单击“ 管理配置” 按钮。在打开的对话窗口中选择“ 新建配置文件” ,弹出 配置文档名称 窗口,输入文档名称并点击 “确定” 。
要删除数据格式配置文件,在 配置文档名称 窗口选中要删除的配置文件,然后点击“ 删除配置文件” ,并在弹出的 删除配置 窗口点击“ 是(Y)” 。
-
更改数据格式
可以调整以下几组数据格式设置:
区域: 点击下拉箭头,选择可用的语言、国家和变体。
设置:
选中“ 使用原始日期/时间格式” 复选框,将使用数据源最初内置的数据格式。
您可以更改以下数据类型的格式:
格式 ,在“ 类型” 下拉框中选择:
-
日期,此类型默认yyyy-MM-dd格式
-
时间,此类型默认HH:mm:ss格式
-
时间戳, 此类型默认yyyy-MM-dd HH:mm:ss格式
-
数字
设置 中会动态展示所选类型的 名字 和 值 。
示例 中展示所选格式类型的例子。
点击 “恢复默认值” 按钮,可以恢复默认数据格式设置;点击 “应用”, 可以保存 数据格式 窗口中所做的更改。
3.7.4. 结果集导出 ¶
通过鼠标右键打开上下文菜单,选择导出结果集,可以方便的把结果集导出。可以选择多种目标类型和格式保存。
3.8. 审计 ¶
3.8.1. 审计登录 ¶
如果想使用审计功能,那么需要使用sao用户登录。且sao登录后,导航树上的【物化视图】、【触发器】、【外部表】、【程序包】、【同义词】、【数据类型】默认不显示,以及一些右键菜单会发生变化。
3.8.2. 审计设置 ¶
Sao登陆后,可在对象节点右键 ->“设置审计” ,打开下图。审计设置需要预先加载sys_audit扩展,并且设置为on。审计分为对象级审计和语句级审计,审计类型为Table、view、MATERIALIZED VIEW、function、procedure、index、sequence的归为对象级审计,其余的则为语句级审计。当设置审计后,再次打开设置审计界面,会显示已经设置的审计。
-
设置模式审计
在模式对象节点右键->“ 设置审计 ”。
-
设置表审计
在表对象节点右键->“ 设置审计 ”。
-
设置视图审计
在视图对象节点右键->“ 设置审计 ”。
-
设置函数视图审计
在函数对象节点右键->“ 设置审计 ”。
-
设置存储过程审计
在存储过程对象节点右键->“ 设置审计 ”。
-
设置序列审计
在序列对象节点右键->“ 设置审计 ”。
-
设置用户审计
在用户节点右键->“ 设置审计 ”。
3.8.3. 查看审计记录 ¶
设置完审计后,右键 ->“查看审计记录” ,打开审计记录界面。审计记录包含了会话ID、审计类型、用户ID、用户名、IP地址、数据库ID、数据库名、模式ID、模式名、对象ID、对象名、操作类型名、SQL文本、操作参数、操作时间、错误信息、执行结果、客户端类型、服务端类型等元素。可通过用户名、审计类型以及操作时间筛选审计记录。
3.9. 任务 ¶
3.9.1. 任务特性 ¶
-
数据导入
-
数据导出
-
执行sql脚本
-
备份
-
还原
3.9.2. 创建任务 ¶
在主菜单栏中点击 “任务”, 弹出 创建任务 窗口:
3.9.2.1. 数据导出 ¶
-
新任务属性:
在任务创建界面输入任务名称并选择“ 数据导出 ”任务选项,点击“ 下一步 ”,如果没有输入名称或者未选择任务类型,“ 下一步 ”按钮置灰状态。
-
Data export:
添加要导出的对象,可通过选择对象节点或者输入查询sql确定要导出的对象。可同时设置多个导出对象,仅支持表、视图、物化视图、序列的导出。
-
数据传输目标类型和格式: 选择导出的文件格式或者方式。
-
设置(表to文件,xxx类型)
-
输出
-
确认: 检查结果无误后,点击“ 开始 ”,自动打开导出文件夹。
3.9.2.2. 数据导入 ¶
-
新任务属性: 同数据导出。
-
配置导入设置: 同数据导出,但不支持输入查询sql。
-
数据传输目标类型和格式: 同数据导出,但仅支持表到表和csv导入。
-
选择源: 选择源表或者csv文件。
-
对象映射
可点击 目标容器 后面的文件夹按钮重新指定目标对象所属模式,也可点击 “浏览...” 重新选择目标对象或者点击 “新建...” 选择新建目标对象,如果选择了新建目标对象,可点击 “目标DDL” 查看ddl,并可以点击 “预览数据” 预览结果数据。
-
数据传输设置
-
检查结果
3.9.2.3. 执行sql脚本 ¶
-
新任务属性
同数据导出
-
选择sql脚本并设置执行参数
点击红框中的按钮选择要执行的sql脚本,并在 script settings 中设置执行参数
3.9.2.4. KingbaseES dump ¶
-
新任务属性
同数据导出
-
选择备份数据库和本地sys_dump所在目录
选择要备份的数据库和本地的sys_dump所在目录,点击 <not present> 下拉框,选择浏览,在弹出的界面中点击添加数据库地址,选择Server/bin目录,点击选择的路径后,会显示数据库版本信息,点击“ 确定 ”即可。
-
选择备份对象
选择模式及模式下的对象,通过任务备份的方式只能备份表和视图。
-
备份设置
3.9.2.5. KingbaseES restore ¶
-
新任务属性
同数据导出
-
选择还原的数据库和本地sys_dump所在目录
同KingbaseES dump
-
数据恢复设置
设置数据恢复参数及选择备份文件。
3.9.3. 任务视图 ¶
可通过“数据库” -> “任务” –> “数据库任务”打开任务视图,任务视图的左边显示的是历史创建的任务,包括名称、执行时间、执行结果、任务类型、工程,右边显示任务日志信息。用户可以通过选择某项任务->单击右键操作该项任务,包括运行、编辑、创建新任务、复制、删除、分组、配置字段等,也可通过图片右上角的工具栏操作。选择某项“日志信息”->“右键”,可对该项日志进行操作,包括日志视图、清除日志、删除日志、打开日志目录等。