【DM版本】:dm8_20210616_FTarm_kylin4_64_ent_8.6.2.2.iso
【操作系统】:Linux kylin10-sp2 4.19.90-24.4.v2101.ky10.aarch64 (我感觉和操作系统的关系不大,应该是通用问题)
【CPU】: ARMv8 CPU
【问题描述】*:
1、现场用户反馈达梦数据库开通了等保参数后,产品异常;具体报错是:
Error 6001: 网络通信异常 dm/security: input not full blocks
2、进一步定位是由于开启了COMM_ENCRYPT_NAME=AES128_ECB引起;
3、达梦修改COMM_ENCRYPT_NAME=AES128_ECB的方法为:
修改:dm.ini中的COMM_ENCRYPT_NAME为AES128_ECB然后重启服务即可;
自测方法:可以参考:https://eco.dameng.com/document-preview/dm/zh-cn/app-dev/go-go-old
package main
// 引入相关包
import (
"database/sql"
_ "dm"
"fmt"
)
var db *sql.DB
var err error
/* 创建数据库连接 */
func connect(driverName string, dataSourceName string) (*sql.DB, error) {
var db *sql.DB
var err error
if db, err = sql.Open(driverName, dataSourceName); err != nil {
return nil, err
}
if err = db.Ping(); err != nil {
return nil, err
}
fmt.Printf("connect to \"%s\" succeed.\n", dataSourceName)
return db, nil
}
func main() {
driverName := "dm"
dataSourceName := "dm://user:pwd@ip:port?socketTimeout=10&logLevel=info"
if db, err = connect(driverName, dataSourceName); err != nil {
fmt.Println(err)
return
}
}
4、报错如下:
为什么我的系统这里显示已解决
