注册

dm8性能较之msql何如?

风露立中霄 2023/01/04 1482 1

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8
【操作系统】:
【CPU】:
【问题描述】*:

今天写了两个脚本 分别取跑库mysql 和dm 结果发现dm 居然只要18秒就可以跑完mysql 180秒的脚本 细思极恐

请问dm这方面是做了优化吗?
dm

#!/bin/bash
#==============================================================#
# 脚本名     :   hcs_dm_initall.sql
# 创建时间   :   2022-12-28 10:02:09
# 更新时间   :   2022-12-29 10:30:18
# 描述      :   使用脚本,根据输入的后缀不同 一键跑完DM的数据库脚本
# 路径      :   需与oneaccess dm版本的sql目录在同一路径下
# 版本      :   1.0.0
# 作者      :   dongjelababy(18271632505@163.com)
# Copyright (C) 2021-2022 HCS
#==============================================================#

#==============================================================#
#                         HCS_DM                              #
#==============================================================#
# 获取达梦的安装目录
dmdispwd=$(find / -path *bin/disql | head -1)
read -p "请输入dm服务端口,默认值 ==> (5236) : " dmport
read -p "请输入dm超管密码,默认值 ==> (SYSDBA) : " sysdbapwd
read -p "请输入oneaccess各个库拥有者对应的密码,默认值 ==> (Bamboocloud@1234) : " kupwd
read -p "请输入oneaccess对应的库及用户的后缀,默认为空串: " suffix
suffix=${suffix:-""}
sysdbapwd=${sysdbapwd:-"SYSDBA"}
dmport=${dmport:-"5236"}
kupwd=${kupwd:-"Bamboocloud@1234"}

if [ "$suffix" = "" ]; then
read -p "后缀为空,请确认(yes/no):yes继续,no退出" input
input=$(echo "$input" | tr "[A-Z]" "[a-z]")
if [ "$input" = "yes" ]; then
   echo "yes go"
else 
echo "exit zero"
exit
fi
else
   echo "go"
fi
starttime=`date +'%Y-%m-%d %H:%M:%S'`

dy="'"
sy='"'

dir=hcs_dm_execute
rm -rf ./${dir}
mkdir ./${dir}
# bam 
cat bam/bam_dm_db_create.sql >./${dir}/bam_dm_db_create.sql
cat >>./${dir}/bam_dm_db_create.sql<<hcs
exit;
hcs
cat bam/bam_dm_20.0.2_all.sql >./${dir}/bam_dm_20.0.2_all.sql
cat >>./${dir}/bam_dm_20.0.2_all.sql<<hcs

exit;
hcs
# bim
cat bim/bim_dm_db_create.sql >./${dir}/bim_dm_db_create.sql

cat >>./${dir}/bim_dm_db_create.sql<<hcs

exit;
hcs
cat bim/bim_dm_table_create.sql >./${dir}/bim_dm_table_create.sql
cat >>./${dir}/bim_dm_table_create.sql<<hcs

exit;
hcs
cat bim/business_dm_table_create.sql >./${dir}/business_dm_table_create.sql
cat >>./${dir}/business_dm_table_create.sql<<hcs

exit;
hcs
cat bim/bim_dm_trigger.sql >./${dir}/bim_dm_trigger.sql
cat >>./${dir}/bim_dm_trigger.sql<<hcs

exit;
hcs
cat bim/bim_dm_data_init.sql >./${dir}/bim_dm_data_init.sql
cat >>./${dir}/bim_dm_data_init.sql<<hcs

exit;
hcs
cat bim/business_dm_data_init.sql >./${dir}/business_dm_data_init.sql
cat >>./${dir}/business_dm_data_init.sql<<hcs

exit;
hcs
# epass
cat epass/epass_dm_db_create.sql >./${dir}/epass_dm_db_create.sql
cat >>./${dir}/epass_dm_db_create.sql<<hcs

exit;
hcs
cat epass/epass_dm_20.0.2_all.sql >./${dir}/epass_dm_20.0.2_all.sql
cat >>./${dir}/epass_dm_20.0.2_all.sql<<hcs

exit;
hcs
# apphub
cat apphub/apphub_dm_db_create.sql >./${dir}/apphub_dm_db_create.sql
cat >>./${dir}/apphub_dm_db_create.sql<<hcs

exit;
hcs
cat apphub/apphub_dm_table_create.sql >./${dir}/apphub_dm_table_create.sql
cat >>./${dir}/apphub_dm_table_create.sql<<hcs

exit;
hcs
cat apphub/apphub_dm_data_sample.sql >./${dir}/apphub_dm_data_sample.sql
cat >>./${dir}/apphub_dm_data_sample.sql<<hcs

exit;
hcs

sed -i "s/Bamboocloud@1234/kupwd/g"  ./${dir}/bam_dm_db_create.sql
sed -i "s/BAM/BAM${suffix}/g" ./${dir}/bam_dm_db_create.sql
sed -i "s/kupwd/${kupwd}/g" ./${dir}/bam_dm_db_create.sql

sed -i "s/Bamboocloud@1234/kupwd/g"  ./${dir}/bim_dm_db_create.sql
sed -i "s/BIM/BIM${suffix}/g" ./${dir}/bim_dm_db_create.sql
sed -i "s/kupwd/${kupwd}/g" ./${dir}/bim_dm_db_create.sql

sed -i "s/Bamboocloud@1234/kupwd/g"  ./${dir}/epass_dm_db_create.sql
sed -i "s/EPASS/EPASS${suffix}/g" ./${dir}/epass_dm_db_create.sql
sed -i "s/kupwd/${kupwd}/g" ./${dir}/epass_dm_db_create.sql

sed -i "s/Bamboocloud@1234/kupwd/g"  ./${dir}/apphub_dm_db_create.sql
sed -i "s/APPHUB/APPHUB${suffix}/g" ./${dir}/apphub_dm_db_create.sql
sed -i "s/kupwd/${kupwd}/g" ./${dir}/apphub_dm_db_create.sql


$dmdispwd SYSDBA/"${sysdbapwd}":"${dmport}" \`./${dir}/bam_dm_db_create.sql
$dmdispwd SYSDBA/"${sysdbapwd}":"${dmport}" \`./${dir}/bim_dm_db_create.sql
$dmdispwd SYSDBA/"${sysdbapwd}":"${dmport}" \`./${dir}/epass_dm_db_create.sql
$dmdispwd SYSDBA/"${sysdbapwd}":"${dmport}" \`./${dir}/apphub_dm_db_create.sql



# bam 跑库表
eval "$dmdispwd BAM${suffix}/$dy$sy${kupwd}$sy$dy:${dmport} \\\`./${dir}/bam_dm_20.0.2_all.sql"

# bim 跑库表

eval "$dmdispwd BIM${suffix}/$dy$sy${kupwd}$sy$dy:${dmport} \\\`./${dir}/bim_dm_table_create.sql"
eval "$dmdispwd BIM${suffix}/$dy$sy${kupwd}$sy$dy:${dmport} \\\`./${dir}/business_dm_table_create.sql"
eval "$dmdispwd BIM${suffix}/$dy$sy${kupwd}$sy$dy:${dmport} \\\`./${dir}/bim_dm_trigger.sql"
eval "$dmdispwd BIM${suffix}/$dy$sy${kupwd}$sy$dy:${dmport} \\\`./${dir}/bim_dm_data_init.sql"
eval "$dmdispwd BIM${suffix}/$dy$sy${kupwd}$sy$dy:${dmport} \\\`./${dir}/business_dm_data_init.sql"

# epass跑库表
eval "$dmdispwd EPASS${suffix}/$dy$sy${kupwd}$sy$dy:${dmport} \\\`./${dir}/epass_dm_20.0.2_all.sql"

# apphub跑库表
eval "$dmdispwd APPHUB${suffix}/$dy$sy${kupwd}$sy$dy:${dmport} \\\`./${dir}/apphub_dm_table_create.sql"
eval "$dmdispwd APPHUB${suffix}/$dy$sy${kupwd}$sy$dy:${dmport} \\\`./${dir}/apphub_dm_data_sample.sql"

endtime=`date +'%Y-%m-%d %H:%M:%S'`
start_seconds=$(date --date="$starttime" +%s);
end_seconds=$(date --date="$endtime" +%s);
echo
echo 
echo
echo "====================hcs============================"
echo "开始时间:" $starttime
echo "结束时间:" $endtime
echo "本次跑库耗时: "$((end_seconds-start_seconds))"s"
echo "====================hcs============================"



dm-des

#!/bin/bash
#==============================================================#
# 脚本名     :   hcs_dm_destroyall.sh
# 创建时间   :   2022-12-28 10:02:09
# 更新时间   :   2022-12-29 10:30:18
# 描述      :   使用脚本,根据输入的后缀不同 一键删除dm数据库的表空间和表
# 路径      :   需与oneaccess dm版本的sql目录在同一路径下
# 版本      :   1.0.0
# 作者      :   dongjelababy(18271632505@163.com)
# Copyright (C) 2021-2022 HCS
#==============================================================#

#==============================================================#
#                         HCS_DM                              #
#==============================================================#
# 获取达梦的安装目录
dmdispwd=$(find / -path *bin/disql | head -1)
read -p "请输入dm服务端口,默认值 ==> (5236) : " dmport
read -p "请输入dm超管密码,默认值 ==> (SYSDBA) : " sysdbapwd
read -p "请输入需要删除的oneaccess库及用户的后缀,默认为空串: " suffix
suffix=${suffix:-""}
sysdbapwd=${sysdbapwd:-"SYSDBA"}
dmport=${dmport:-"5236"}

if [ "$suffix" = "" ]; then
    read -p "后缀为空,请确认是否删除(yes/no):" input
    input=$(echo "$input" | tr "[A-Z]" "[a-z]")
    if [ "$input" = "yes" ]; then
        echo "yes go"
    else
        exit
    fi
else
    echo go!
fi

$dmdispwd SYSDBA/${sysdbapwd}:${dmport} -e "drop user bam${suffix} cascade;"
$dmdispwd SYSDBA/${sysdbapwd}:${dmport} -e "drop TABLESPACE bam${suffix};"
$dmdispwd SYSDBA/${sysdbapwd}:${dmport} -e "drop user bim${suffix} cascade;"
$dmdispwd SYSDBA/${sysdbapwd}:${dmport} -e "drop TABLESPACE bim${suffix};"
$dmdispwd SYSDBA/${sysdbapwd}:${dmport} -e "drop user epass${suffix} cascade;"
$dmdispwd SYSDBA/${sysdbapwd}:${dmport} -e "drop TABLESPACE epass${suffix};"
$dmdispwd SYSDBA/${sysdbapwd}:${dmport} -e "drop user apphub${suffix} cascade;"
$dmdispwd SYSDBA/${sysdbapwd}:${dmport} -e "drop TABLESPACE apphub${suffix};"

# $dmdispwd SYSDBA/${sysdbapwd}:${dmport} -e <<eof
# drop user bam${suffix} cascade;
# drop tablespace bam${suffix};
# eof


image.png

回答 0
暂无回答
扫一扫
联系客服