×

达梦数据库 数据库 怎么解决

达梦数据库总是连接失败怎么解决?kettle内存占用怎么解决

admin admin 发表于2022-05-18 23:57:48 浏览477 评论0

抢沙发发表评论

达梦数据库总是连接失败怎么解决






摘要
解决该问题方法:





1、卸载默认不会删除数据库data目录,这是为了保护数据,确定以前的所有数据不要的话,由管理员手动删除;





2、数据库自带的DM服务查看器里查看是否有DMservice**的服务注册;





3、以管理员开启CMD命令行界面,然后执行:sc delete “服务名“





如:sc delete DmServiceDMSERVER







咨询记录 · 回答于2021-10-28










达梦数据库总是连接失败怎么解决










你好,你的问题我已经收到,本答主一定快马加鞭为您送上优质的答案。辛苦您耐心等待一下,感谢亲亲的理解哦!










(温馨提示:问问题必须以文字形式表达清楚哦!)










com.alibaba.datax.common.exception.DataXException: Code:[DBUtilErrorCode-10], Description:[连接数据库失败. 请检查您的 账号、密码、数据库名称、IP、Port或者向 DBA 寻求帮助(注意网络环境).]. - 具体错误信息为:java.sql.SQLException: No suitable driver found for jdbc:dm://****:5236/****
-怎么解决










如:sc delete DmServiceDMSERVER






kettle内存占用怎么解决


kettle性能调优

性能调优在整个工程中是非常重要的,也是非常有必要的。但有的时候我们往往都不知道如何对性能进行调优。其实性能调优主要分两个方面:一方面是硬件调优,一方面是软件调优。本章主要是介绍Kettle的性能优化及效率提升。

一、Kettle调优

1、 调整JVM大小进行性能优化,修改Kettle定时任务中的Kitchen或Pan或Spoon脚本。

修改脚本代码片段

set OPT=-Xmx512m -cp %CLASSPATH% -Djava.library.path=libswt\win32\ -DKETTLE_HOME=“%KETTLE_HOME%“ -DKETTLE_REPOSITORY=“%KETTLE_REPOSITORY%“ -DKETTLE_USER=“%KETTLE_USER%“ -DKETTLE_PASSWORD=“%KETTLE_PASSWORD%“ -DKETTLE_PLUGIN_PACKAGES=“%KETTLE_PLUGIN_PACKAGES%“ -DKETTLE_LOG_SIZE_LIMIT=“%KETTLE_LOG_SIZE_LIMIT%“

参数参考:

-Xmx1024m:设置JVM最大可用内存为1024M。
-Xms512m:设置JVM促使内存为512m。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。
-Xmn2g:设置年轻代大小为2G。整个JVM内存大小=年轻代大小 + 年老代大小 + 持久代大小。持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。
-Xss128k:设置每个线程的堆栈大小。JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K。更具应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。

样例:OPT=-Xmx1024m -Xms512m

2、 调整提交(Commit)记录数大小进行优化

如修改RotKang_Test01中的“表输出”组件中的“提交记录数量”参数进行优化,Kettle默认Commit数量为:1000,可以根据数据量大小来设置Commitsize:1000~50000。

3、 调整记录集合里的记录数

4、尽量使用数据库连接池;

5、尽量提高批处理的commit size;

6、尽量使用缓存,缓存尽量大一些(主要是文本文件和数据流);

7、Kettle是Java做的,尽量用大一点的内存参数启动Kettle;

8、可以使用sql来做的一些操作尽量用sql;

Group , merge , stream lookup,split field这些操作都是比较慢的,想办法避免他们.,能用sql就用sql;

9、插入大量数据的时候尽量把索引删掉;

10、尽量避免使用update , delete操作,尤其是update,如果可以把update变成先delete, 后insert;

11、能使用truncate table的时候,就不要使用deleteall row这种类似sql合理的分区,如果删除操作是基于某一个分区的,就不要使用delete row这种方式(不管是deletesql还是delete步骤),直接把分区drop掉,再重新创建;

12、尽量缩小输入的数据集的大小(增量更新也是为了这个目的);

13、尽量使用数据库原生的方式装载文本文件(Oracle的sqlloader, mysql的bulk loader步骤);

14、尽量不要用kettle的calculate计算步骤,能用数据库本身的sql就用sql ,不能用sql就尽量想办法用procedure,实在不行才是calculate步骤;

15、要知道你的性能瓶颈在哪,可能有时候你使用了不恰当的方式,导致整个操作都变慢,观察kettle log生成的方式来了解你的ETL操作最慢的地方;

16、远程数据库用文件+FTP的方式来传数据,文件要压缩。(只要不是局域网都可以认为是远程连接)。
-数据库

SQL Server(MSSQLSERVER)无法启动怎么解决


1、IP地址配置不正确:

打开 Microsoft SQL Server 2005配置工具下的SQL Server Configuration Manager,选择MSSQLSERVER协议, 然后双击右边窗口的TCP/IP,在弹出窗口中检查IP配置。-怎么解决

2、可能是因为VIA协议启用造成的。解决方法如下:

打开SQL Server 2008中的配置工具SQL Server Configure Manager,将VIA协议禁用.重新启动SQL Server(MSSQLSERVER ),成功.

3、管理员密码修改也会造成sqlserver服务无法启动。解决方法如下:

打开 Microsoft SQL Server 2005配置工具下的SQL Server Configuration Manager,在MSSQLSERVER服务属性中,修改以哪个账号来启动服务。
我机器启动不了服务的原因就是启用了 “VIA”服务,禁用后,OK了。-数据库

4. 安装的是SQL Server 评估版,180天的试用期后,MSSQLSERVER服务就无法启动,手动启动就报告17051错误。

解决办法:
第一步:进入SQL2008配置工具中的安装中心,
第二步:再进入维护界面,选择版本升级,
第三步:进入产品密钥,输入密钥
Developer: PTTFM-X467G-P7RH2-3Q6CG-4DMYB
Enterprise: JD8Y6-HQG69-P9H84-XDTPG-34MBB
第四步:一直点下一步,直到升级完毕。 
用key升级成功后即可启动MSSQLSERVER服务。如果启动SQL SERVER管理器依然报告过期错误,则将注册表HKEY_LOCAL_MACHINE\SOFTWARE\\Microsoft\Microsoft SQL Server\100\ConfigurationState,将其中CommonFiles的键值改为3。
然后再重复以上四个步骤,进行升级就OK了。-怎么解决

参考资料

csdn.csdn[引用时间2018-1-2]