达梦数据库(DM)用户名大小写处理规则

达梦数据库(DM)用户名大小写处理规则

达梦数据库对用户名的处理与PostgreSQL和Oracle有所不同,以下是相关说明:

一、基本规则

  1. 默认情况下:达梦数据库区分用户名大小写
    • 创建的用户名会保留原始大小写格式
    • 连接时必须使用相同的大小写形式

二、具体行为示例

1. 用户创建

-- 以下命令创建的是三个不同的用户
CREATE USER MyUser IDENTIFIED BY "Dameng123";
CREATE USER myuser IDENTIFIED BY "Dameng123";
CREATE USER MYUSER IDENTIFIED BY "Dameng123";-- 验证:
SELECT username FROM DBA_USERS WHERE username LIKE '%USER%';
/*显示:
MyUser
myuser
MYUSER
*/

2. 连接行为

disql MyUser/Dameng123@localhost:5236  # 必须大小写完全匹配
disql myuser/Dameng123@localhost:5236  # 视为不同用户

三、特殊情况处理

  1. 系统预设账户:如SYSDBA、SYSAUDITOR等系统角色不区分大小写

    disql SYSDBA/Dameng123  # 等效于
    disql sysdba/Dameng123
    
  2. 双引号使用:达梦中双引号用于保留对象名大小写,但对用户名影响不大(用户名本身就区分大小写)

四、重要注意事项

  1. 密码也区分大小写

    CREATE USER Analyst IDENTIFIED BY "PassWORD123";
    -- 连接时必须使用完全相同的密码大小写
    
  2. 最佳实践建议

    • 统一采用大写或小写命名规范(推荐全大写)
    • 避免使用仅大小写差异的用户名(如User和USER)
    • 在连接字符串中严格匹配创建时的大小写
  3. 影响范围

    • 用户名大小写敏感性影响所有数据库操作
    • 包括授权语句:GRANT SELECT TO "MyUser"必须大小写匹配

五、与其他数据库对比

数据库用户名大小写处理达梦特点
达梦(DM)严格区分大小写国产数据库典型设计
Oracle默认不区分,双引号强制区分自动转为大写
PostgreSQL默认不区分,双引号强制区分自动转为小写
MySQL取决于lower_case_table_names设置可配置

六、问题排查

如果遇到连接问题,可检查:

-- 查看所有用户名(注意大小写)
SELECT username FROM DBA_USERS;-- 检查特定用户(需大小写精确匹配)
SELECT * FROM DBA_USERS WHERE username = 'MyUser';

七、生产环境建议

  1. 命名规范

    -- 推荐使用统一大写规范
    CREATE USER FIN_REPORT IDENTIFIED BY "Dameng@2023";
    
  2. 应用连接配置

    # JDBC连接示例(必须大小写匹配)
    jdbc.url=jdbc:dm://localhost:5236?username=APP_USER&password=App@123
    
  3. 审计日志注意

    • 审计记录中的用户名会保留原始大小写
    • 查询审计日志时需要精确匹配大小写

达梦数据库的这种设计增强了安全性,但需要管理员更注意命名规范的一致性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/web/83486.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

黑马点评面试话术

文章目录 1.项目介绍2. 分布式登录功能2.1 讲讲登录的整个流程2.2 集群模式session下存储用户信息会有啥问题?2.3 为什么采用redis存储用户信息和验证码2.4 redis的存储格式怎么样的?2.5 为什么采用Hash结构存储用户信息2.6 为什么采用双拦截器&#xff…

MTK APEX测光系统中各变量具体的计算方式探究

目录 一、APEX测光系统介绍 二、MTK测光系统实例介绍 三、关于测光系统的一些疑问 一、APEX测光系统介绍 详细内容可以参考; AE(自动曝光)系统简介

K8S的基本概念

Kubernetes是一个开源的容器编排部署管理平台,用于管理云平台中多个主机上的容器化应用。Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了应用部署、规划、更新、维护的一种机制。 对应用开发者而言,可以把Kubernetes看成一个集群操作系统。Kubernetes…

NLP学习路线图(三十四): 命名实体识别(NER)

一、命名实体识别(NER)是什么? 命名实体识别(Named Entity Recognition, NER)是自然语言处理中的一项关键序列标注任务。其核心目标是从非结构化的文本中自动识别出特定类别的名词性短语,并将其归类到预定义的类别中。 核心目标:找到文本中提到的命名实体,并分类。 典…

大三自学笔记:探索Hyperlane框架的心路历程

## Day 1:初识 Hyperlane 在 GitHub 上发现了 Hyperlane 这个 Rust HTTP 框架,立刻被它的性能数据吸引。官方文档写着: > "hyperlane 是一个高性能且轻量级的 Rust HTTP 框架,设计目标是简化现代 Web 服务的开发&#xff…

Java大厂面试真题:谢飞机的技术挑战

Java大厂面试真题:谢飞机的技术挑战 场景一:电商场景 面试官:在电商项目中,我们通常需要处理大量的并发请求。请谈谈你对JVM调优的理解。 谢飞机:嗯,JVM调优主要是为了提高程序的性能和稳定性。比如&…

【Docker管理工具】安装容器管理工具Oxker

【Docker管理工具】安装Oxker容器管理工具 一、Oxker介绍1.1 Oxker简介1.2 Oxker功能1.3 Docker介绍 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载Oxker镜像五、安装Oxke…

产品成本分析怎么做?从0到1搭建全生命周期分析框架!

目录 一、为什么要做产品全生命周期成本分析? 1.资源再分配 2.动态成本校准 3.战略决策支持 二、产品成本分析思路 1.建立全生命周期成本追踪 2.联动分析关键指标 3.定位问题产品线 4.资源效率四象限分配 三、产品成本分析指标 1.分投入成本:…

机器学习与深度学习20-数学优化

目录 前文回顾1.梯度下降的基本原理2.什么是损失函数?3.随机梯度下降和小批量梯度下降4.什么是学习率5.优化算法中的收敛性6.常用的数学优化算法 前文回顾 上一篇文章链接:地址 1.梯度下降的基本原理 梯度下降(Gradient Descent&#xff0…

Photoshop 2025 性能配置全攻略:硬件选购与软件优化指南

一、硬件配置核心建议 根据Adobe官方要求及实测反馈,Photoshop 2025对硬件的需求侧重CPU、内存和存储,显卡需求相对宽松,但特定功能(如AI滤镜、3D渲染)需关注显卡性能。 硬件类别最低配置推荐配置(流畅运…

华为云Flexus+DeepSeek征文 | 华为云ModelArts Studio快速上手:DeepSeek-R1-0528商用服务的开通与使用

华为云FlexusDeepSeek征文 | 华为云ModelArts Studio快速上手:DeepSeek-R1-0528商用服务的开通与使用 引言一、ModelArts Studio平台介绍华为云ModelArts Studio简介ModelArts Studio主要特点 二、开通DeepSeek-R1-0528商用服务访问ModelArts Studio控制台DeepSeek-…

day53 神经网络调参指南

目录 一、引言 二、权重初始化:为何如此重要? (一)随机种子:确保实验的可重复性 (二)权重初始化的重要性 1. 神经网络的对称性问题 2. 避免梯度消失和梯度爆炸 (三&#xff0…

【大模型02---Megatron-LM】

文章目录 Megatron-LM数据并行模型并行张量并行流水线并行 3D并行 Megatron-LM Megatron是当前大模型训练时经常使用的一种分布式并行框架,它通过采用DP,TP,PP等来加速模型的训练,反正就是一个字,好。 大模型在训练的时候,显存占…

魔百和网络机顶盒CM211-1硬件解析

先来个正面照 背面照 核芯 无线网卡 支持WiFi与蓝牙 硬盘 正面内存与背面内存

Kratos 与Golang Cms的关系

Kratos 与 Golang CMS 的关系 Kratos 是 Bilibili 开源的一款轻量级 Go 语言微服务框架,专注于构建高性能、可扩展的后端服务。虽然它本身并不是一个完整的 CMS(内容管理系统),但它可以用于开发 CMS 系统的后端或 API 服务。 我们的目标是提供全面的微服务开发技术。基于…

在vue3+vite中给 Video视频 添加字幕

Video视频 添加字幕 方式一: 使用 track标签template标签中css样式修改方式二:直接读取.vtt文件方式一: 使用 track标签 参考1:https://blog.csdn.net/weixin_42321819/article/details/112442773 参考2:https://blog.csdn.net/foren_whb/article/details/80810552 template标…

UE4手动实现billboard效果让物体始终面向相机正面

一个很简单的需求,但在网上竟然没查到。首先不能用FindLookAtRotation,因为这是用location算的,是让物体朝向相机的方向,而不是朝向相机的正面。区别如下图所示: 然后想用billboard component,不过这个原生…

在阿里云上搭建n8n

0.安装docker 0.1 删除Docker相关源 #删除Docker相关源 sudo rm -f /etc/yum.repos.d/docker*.repo #卸载Docker和相关的软件包 sudo dnf -y remove \ docker-ce \ containerd.io \ docker-ce-rootless-extras \ docker-buildx-plugin \ docker-ce-cli \ docker-compose-plug…

Qt中的OpenGL (4)[纹理]

文章说明 本文是学习OpenGL的笔记,主要参考大神JoeyDeVries的LearnOpenGL第六课《纹理》,并将教程中的代码基于Qt进行实现。 学习目标 掌握纹理基本知识掌握纹理贴图目录结构 |- |-- HelloTextures|--- hello_textures.cpp|--- hello_textures.h|--- main.cpp|--- CMakeLi…

【Java多线程从青铜到王者】阻塞队列(十)

阻塞队列 阻塞队列也是一种队列,先进的先出 阻塞队列就是对普通的队列做出的拓展 阻塞队列的特性 1.线程安全的,我们普通的队列值线程不安全的 2.具有阻塞的特性: a》如果针对一个已经满了的队列进行如队列操作的话,入队列操作就…