达梦数据库安全基线参考

粗略地说,大盟数据库安全的基础级别由七点组成,但每个细节都必须到位。

我们先来说说最重要的事情。
密码问题是我们去年启动的一个项目中的一个问题。
3 000级系统因密码弱而直接被黑客入侵。
用行话来说,这称为雪崩效应。
事实上,前部的轻微延迟就导致了整个后部的瘫痪。
必须保持密码复杂性。
例如,去年的一项测试表明,包含三种字符的 8 位强密码可以阻止 9 0% 的暴力攻击。
默认情况下,密码应每 9 0 天更改一次。
但不要被迫在凌晨 2 点突然更改密码。
这会让运维疯狂。
还有一件事:普通用户不应该接触 SYSDBA 帐户。
去年我们有一个运维用户,用普通账号登录,删除了一张基表。
说实话,当时挺尴尬的。
还有一个更重要的细节。
必须开启审计功能。
去年,审计追踪帮助我们找到了一个被隐藏了六个月的内部账户。
等等,还有别的事。
不要让您的审计策略过于宽泛。
审计到 SQL 语句级别会对性能产生严重影响,因此您应该小心。

一开始我以为改变端口就可以了,但后来发现这是错误的。
新系统上的默认端口实际上是5 2 3 6 ,这很好,但旧系统需要更改。
否则,就像我们去年接手的 2 008 年项目一样,它会被扫描端口的脚本扫描器破坏。
对于加密传输,请在条件允许的情况下执行此操作。
我们去年测试过。
一旦启用SSL加密,即使数据包被截获,也无法被理解。
然而,设置 SSL 证书是一项技术工作。
不要强迫自己这样做。
提前做好准备。
更新补丁时需要更加小心。
去年补丁应用到测试环境后,报告系统失败了,花了两天才恢复。
因此,补丁应该首先在测试环境中运行,正式环境最好关闭工作。

不建议把基础安全当作摆设。
在真实环境中运行几次。
你会发现很多细节比标准文档复杂得多。

麒麟查寻达梦数据库是否安装

这就是在 Kirin 系统上安装 Chadameng 数据库的一些技巧。

第一步是查看流程。
在终端中键入命令“ps-ef|grepdmserver”。
如果有“dmserver”进程,则说明数据库正在运行,并且基本安装完毕。
像“root1 2 3 4 5 1 01 0:00?00:00:00/dm8 /bin/dmserver”一样,“dmserver”是关键。

第二个技巧是看目录。
“ls /dm8 ”命令检查/dm8 目录。
如果有“bin”和“data”等文件夹,则应安装它们。
或者使用“find/-namedmdbms”来搜索整个系统。
如果有文件,说明有安装痕迹。

第三招就是看软件包。
对于 RPM,请键入“rpm-qa|grepdmdbms”。
当您看到软件包名称“dmdbms-8 .1 .2 .1 -1 .x8 6 _6 4 ”时,确认安装。
对于 Debian 系统,使用“dpkg-l|grepdmdbms”进行验证。

你自己看看,这些技巧够吗?

达梦数据库版本banner解读

结论:大盟数据库版本信息包括主次修订号、标识、构建日期和数字,可以通过v$version查询得到,如DMDatabaseServer8 .1 .1 .1 9 0build(2 02 3 -05 -1 0)ENT6 4 ,8 .1 .1 是版本号,ENT是企业版本,.

ASP .NET CORE 使用 达梦 操作数据库

嘿,这个SqlSugar,没错,这就是同一个ORM平台。
可以很方便地在ASP.NET Core中使用它来创建达梦数据库。
我用过,感觉不错。

大梦数据库就是这样。
要使用它,您需要安装数据库。
在NuGet中搜索“Dameng”并安装第一个正式版本。
我记得2 02 2 年的时候我假装时间过得很快。

然后将字符串连接并匹配。
对于旧版本PORT=5 2 3 6 ;DATABASE=DAMENG。
对于新版本 Server=localhost;UserId=SYSDBA。
使用 SCHEMA=myshcema;DATABASE=DAMENG 方案时,请记住这一点。

SqlSugarClient 初始化时如下所示: 夏普 vardb = newSqlSugarClient(newConnectionConfig() { ConnectionString="Server=localhost;UserId=SYSDBA;PWD=SYSDBA;DATABASE=新数据库", DbType=DbType.Dm, IsAutoCloseConnection=true });
所以它是相关的。

大盟数据库有表名和字段名两种模式。
大写字母,默认值。
小写,驼峰式,不是很标准。
如果使用小写,则必须禁用自动转换为大写。
像这样: 夏普 vardb = newSqlSugarClient(newConnectionConfig() { ConnectionString="Server=localhost;UserId=SYSDBA;PWD=SYSDBA;DATABASE=新数据库", DbType=DbType.Dm, IsAutoCloseConnection=true, 更多设置=newConn更多设置(){ IsAutoToUpper=假 } });
为此,请注意您需要 SqlSugar5 .1 .3 .4 1 -preview04 或更高版本。

然后使用数据库、查询、插入、更新和删除就变得非常简单。
例如,要检查所有学生: 夏普 varstudents=db.Queryable().ToList();
勾选一项: 夏普 varstudent=db.Queryable().Where(it=>it.Id==1 ).First();
分页: 夏普 intpageIndex=1 ; intpageSize = 2 0; 总计数=0; varpageData=db.Queryable().ToPageList(pageIndex,pageSize,reftotalCount);
插入并返回受影响的行数: 夏普 db.Insertable(newStudent{Name="张三"}).ExecuteCommand();
返回自增ID: 夏普 intid=db.Insertable(newStudent{Name="李思"}).ExecuteReturnIdentity();
更新: 夏普 db.Updateable(newStudent{Id=1 ,Name="赵刘"}).ExecuteCommand();
删除: 夏普 db.Deleteable().Where(it=>it.Id==1 ).ExecuteCommand();
它们经常使用。

还提供高级功能。
例如,Damen schema 前缀需要更新为 SqlSugar5 .1 .4 .9 0-preview1 0 或更高版本。
在连接字符串中,配置 SCHEMA=myshcema;DATABASE=DAMENG。

此外,要处理 CLOB/Text 类型,您必须升级到 SqlSugar5 .1 .4 .9 2 或更高版本。
课堂上配置实体: 夏普 [SugarColumn(SqlParameterDbType=typeof(NClobPropertyConvert))] publicstringDescription{get;set;}
请注意,您在插入空格时可能会遇到问题。
建议将驱动程序更新至SqlSugarCore.Dm1 .3 .0+。

也禁止将 VARCHAR(3 6 ) 转换为 GUID。
在连接字符串中,添加 varchar3 6 ToGuid=false。

常见问题。
例如,.NET Framework 中的 DLL 无效,错误消息:找不到方法 Dm.Comand.DmparameterCollection.get_Parameters。
解决方案:将SqlSugar更新到最新版本。

大型CLOB/BLOB文件问题,解决方案:单独安装最新版本的SqlSugarCore.Dm。

官方demo在GitHub-SqlSugar,你可以查看一下。

总之,SqlSugar对大梦数据库的支持还是比较完善的。
连接配置、表模式适配、CRUD 操作和高级功能均可用。
正确设置并非常有效地使用它。