源库版本:YashanDB 企业版 22.2.4.1目标库版本:YashanDB 企业版 22.2.13.100查询源库中对象情况SQL> select object_type,status,count
用户执行SQL语句操作模式对象时,如果没有显式指定对象所属Schema,YashanDB会默认视为操作current_schema下的对象(若对象不存在、用户对相应对象无操作权限等都将会报错)。 对于复杂的模式对象(例如视图、存储过程以及自定义函数),在编译此类对象定义的过程中,YashanDB会临时将当前用户和当前Schema切换为对象所属的Schema。 定义是存储在YashanDB的系统表中与对象相关的信息,通过系统视图、DBMS_METADATA程序包等方式可以查询。 包含数据的关系数据结构(表、索引、访问约束、分区),其数据由YashanDB存储在表空间中。 YashanDB在创建对象时、对象的定义发生变更时,或使用对象时,会自动检测并维护该对象所依赖的其他对象的状态。
需注意,本函数如下规格与MySQL中的IF函数存在差异:当expr2和expr3均为BIT类型时,YashanDB返回BIT类型,MySQL返回INT/BIGINT UNSIGNED类型;当epxr2和 epxr3为BOOLEAN、TINYINT或SMALLINT类型时,YashanDB按照BOOLEAN<TINYINT<SMALLINT的优先级进行类型转换,MySQL全部返回INT类型;示例SELECT
# 审计范围YashanDB对用户提供如下方面的审计管理: 权限审计 权限审计是指对YashanDB的所有系统权限进行审计,当对某个系统权限启用审计策略后,只要在SQL语句或其他操作中使用了该系统权限都会被审计 角色审计 YashanDB提供角色审计功能,在某个角色上启用审计策略后,所有直接被赋予给该角色的系统权限就可以被审计。 # 审计开关YashanDB通过配置参数UNIFIED_AUDITING控制审计开关。当审计开关被打开时,系统将执行已创建并已使能的各项审计策略。
生成更新统计信息的DBMS_STATS.SET_XXX_STATS调用语句,可用来保存表的统计信息版本## 限制:owner及table name 被转换为大写,名字中包含小写字母不能生成相应语句# 在YashanDB
【问题分类】 YashanDB 开机自启【关键字】 开机自启,依赖包【问题描述】 数据库所在服务器重启后只拉起monit、yasom、yasom进程,缺少yasdb进程:【问题原因分析】 数据库安装的时候未启动守护进程 /bin/yasboot monit start --cluster yashandb守护进程用于持续监控YashanDB的各进程状态,并在进程异常时将其重新拉起,查看数据库各进程监控状态:markdown /bin/yasboot monit summary -c yashandb--------------------------------------------------------------- /22.2.12.100/bin/monit/monit -c /home/yashan1/yashandb/22.2.12.100/bin/monit/monitrc'保存后退出,即完成注册开启自启动操作 【影响范围】 22.2/23.2【修复版本】 -作者:崖山数据库系统YashanDB链接:https://juejin.cn/post/7390193369408700454来源:稀土掘金著作权归作者所有
新建 JDBC 提供程序点击”JDBC 提供程序”,选择作用域数据库类型选择”用户定义的”实现类名:com.yashandb.jdbc.pool.YasConnectionPoolDataSource
SQL> drop user user1; 备注:对于存储在数据库表中的密码,YashanDB 提供_CHECK_PASSWORD_COMPLEXITY(隐藏参数,默认值 FALSE)用于控制是否开启密码强度控制 开启密码强度控制后,YashanDB 将在密码设置时进行强度校验,输入的密码需要满足 ①至少八位长度 ② 数字+大小写+特殊字符组合的条件后才能设置成功。 禁用默认密码 检查崖山默认密码是 Cod-2022 或者 yasdb_123,无法登录用户 示例: [yashan@host-10-76-249-193 ~]$ yasql sys/Cod-2022 YashanDB 00007 unable to CONNECT to Server after 3 attempts [yashan@host-10-76-249-193 ~]$ yasql sys/yasdb_123 YashanDB
问题现象YashanDB运行正常,业务也可以正常连接使用,但是使用yasboot查看YashanDB status为unconnected$ yasboot cluster status -c yashandb 解决方法及规避方式使用yasboot cluster password set -n -c yashandb 修改密码即可解决问题分析过程查看yasagent.log,发现有如下异常:2024-12-09 15:57:48 DEBUG [yashandb-1-1:1] yasdb.go:216 user no in YASDBA group, use passwd login ****用户不在YASDBA 组中****2024-12-09 15:57:48 DEBUG [yashandb-1-1:1] yasdb.go:241 get node '1-1:1' tcp driver, listen addr is '172.16.60.53:1688'2024-12-09 15:57:48 ERROR [yashandb-1-1:1] yasdb.go:345 query failedYAS-02143
如果 total_bytes 大于 high_water_mark,代表有可回收的空间为 total_bytes-high_water_mark,单位 byte。
概述由于YMP不支持PostgreSQL数据库,因此使用开源工具Kettle迁移PosgreSQL数据到YashanDB。本文介绍了Windows环境的Kettle使用方式进行数据迁移。 4、打开syncData_PostgreSQL_YashanDB.kjb,这个任务是总任务,它封装了多个子任务用于从PostgreSQL迁移数据到崖山。 URL(jdbc:yasdb://YashanDB_IP:YashanDB_PORT/YashanDB_User)和JDBC驱动类名称,并输入用户名和密码,点击“测试”,测试通过后选择“确认”。 8、修改DB连接PostgreSQLInput和YashanOutput后,getDatas_PostgreSQL_YashanDB配置处于未保存状态,请务必对该任务进行保存。 10、切换回syncData_PostgreSQL_YashanDB.kjb,执行运行即可。
jdbc:yasdb://YashanDB_IP:YashanDB_PORT/YashanDB_User)和JDBC驱动类名称,并输入用户名和密码,点击“测试”,测试通过后选择“确认”。 10、切换回syncData_MySQL_YashanDB.kjb,执行运行即可。 5、修改getDatas_MySQL_YashanDB.ktr的DB连接MySQLInput配置。 :1688YashanDB SQL Enterprise Edition Release 23.2.1.100 x86_64 Connected to:YashanDB Server Enterprise 属性-数据库方言Generic database属性-端口1688注意:JDBC连接串和类型请参考yashanDB官方文档:YashanDB JDBC驱动使用介绍XML <connection>
访问约束是YashanDB特有的一种关系数据结构,基于有界计算理论的访问约束模型(AC,Access Constraint)实现:通过在数据源上建立AC,实现大数据变小的模型变换。 YashanDB的访问约束结构是按照用户创建访问约束时指定的函数f(x),从大数据集中提取与f(x)结果相关的数据,将其存储在存储空间中。
其中expr的值为数值型,或可以转换为NUMBER类型的字符型。对于其他类型,函数返回类型不支持。
RTRIM函数从右往左删除expr表示的字符串里与trim_character匹配的内容,得到一个新的子字符串。
如果是1个参数,TIMESTAMP函数计算timestamp_expr表示的日期,返回一个TIMESTAMP类型的日期值。
POSITION函数在一个expr2表示的字符串中从左向右查找expr1表示的字符串,返回expr1第一次出现的位置,该结果为一个BIGINT类型的数字。当没有查找到匹配值时,返回0。
本章节将介绍YashanDB数据库中索引相关的基本语法和示例。
INSTR函数根据子字符串、起始位置、出现次数在expr表示的字符串中查找,并返回第occurrence次出现的BIGINT类型的位置值,未查找到则返回0。
INSTRB函数根据子字符串、起始位置、出现次数在expr表示的字符串中按字节查找,并返回第occurrence次出现的BIGINT类型的位置值,未查找到则返回0。