注册
快捷执行disql命令环境变量配置+最实用的脱机还原方式+常见问题分享
培训园地/ 文章详情 /

快捷执行disql命令环境变量配置+最实用的脱机还原方式+常见问题分享

Joker 2022/11/17 1454 0 0

安装完成配置环境变量,可以给root和dmdba用户都加,之后可以直接在shell界面使用disql等快捷执行命令

切换到 root 用户进入 dmdba 用户的根目录下
su - dmdba
cd /home/dmdba
vi .bash_profile,看是否有下列三行,没有则添加
export LD_LIBRARY_PATH=“$LD_LIBRARY_PATH:/dm8/bin”
export DM_HOME=“/dm8”

export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool

生效:
source .bash_profile

查询某张表在哪个模式
select * from DBA_TABLES where TABLE_NAME=‘表名’;

采用脱机还原的方式如何将一个旧库还原到一个新库

注意!!!新建的目录,要有dmdba用户的权限,要不然会在启动备份恢复过程中出现很多问题.

脱机备份
先停止服务 systemctl stop DmServicekingdee

备份
然后进如达梦bin目录
执行./dmrman

BACKUP DATABASE ‘/kingdee/dmdatatest2/data/DBTEST2/dm.ini’ FULL BACKUPSET ’ /kingdee/dmsqlbk/FULL0712’;


脱机还原

新建实例用dmdba用户
./dminit page_size=32 extent_size=32 CASE_SENSITIVE=1 path=/dm8/dmdata CHARSET=1 length_in_char=1 DB_NAME=DBTEST INSTANCE_NAME=DBTESTSERVER PORT_NUM=5238

注册服务用root用户
./dm_service_installer.sh -t dmserver -dm_ini /dm8/dmdata/DBTEST/dm.ini -p DBTEST

启动 RMAN,校验备份,校验待还原备份集的合法性。校验备份有两种方式,联机和脱机,此处使用脱机校验。执行以下命令:
CHECK BACKUPSET ‘/dm8/dmdata/DBTEST/bak/FULL0713’;

还原数据库。启动 DMRMAN,执行以下命令:
RESTORE DATABASE ‘/dm8/dmdata/DBTEST/dm.ini’ FROM BACKUPSET ‘/dm8/dmdata/DBTEST/bak/FULL0713’;

恢复数据库。启动 DMRMAN,执行以下命令
RECOVER DATABASE ‘/dm8/dmdata/DBTEST/dm.ini’ FROM BACKUPSET ‘/dm8/dmdata/DBTEST/bak/FULL0713’;

恢复 db_magic,执行以下命令:
RECOVER DATABASE ‘/dm8/dmdata/DBTEST/dm.ini’ UPDATE DB_MAGIC;

常见报错及解决办法
1、当会话达到最大值以后,后台日志会报如下错误信息:Reached the max session limit.
解决方法
ALTER SYSTEM SET ‘MAX_SESSIONS’ =5000 spfile;
重启后查询确认
select SF_GET_PARA_VALUE(2,‘MAX_SESSIONS’);

2、解决聚集主键相关得报错
SQL: EXEC P_ALTERPK ‘PK_T_BAS_VERSIONCAPTION’, ‘T_BAS_VERSIONCAPTION’, ‘FID,FPRODUCTNAME’, ‘1’; , 错误sql: EXEC P_ALTERPK ‘PK_T_BAS_VERSIONCAPTION’, ‘T_BAS_VERSIONCAPTION’, ‘FID,FPRODUCTNAME’, ‘1’; ,-- Stack:kd.bos.exception.KDException: 试图删除聚集主键
-3210: P_ALTERPK line 32

对于已存在的聚集索引,如下方式解决:
添加字段,alter table “BIZ_TPL_COMM_SCM”.“T_MSPLAN_CROSSTYPE_L” add column(“FZYJTEST0820” VARCHAR(50) default (’ ') not null );
创建聚集索引create CLUSTER index IDX_ZYJTEST0820 on BIZ_TPL_COMM_SCM.T_MSPLAN_CROSSTYPE_L (FZYJTEST0820);
删除索引drop index “BIZ_TPL_COMM_SCM”.“IDX_ZYJTEST0820”;
删除字段alter table “BIZ_TPL_COMM_SCM”.“T_MSPLAN_CROSSTYPE_L” drop “FZYJTEST0820”;
提交事务commit;

超出全局hash join空间,适当增加HJ_BUF_GLOBAL_SIZE
解决方式,查询这个值
select * from SYS.“V$DM_INI” where PARA_NAME = ‘HJ_BUF_GLOBAL_SIZE’;
设置这个值
SP_SET_PARA_VALUE (1, ‘HJ_BUF_GLOBAL_SIZE’,5000);

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服