当前位置: 首页 > news >正文

达梦数据库 忘记 SYSDBA 密码 处理方法

    DM 提供数据库身份验证模式、基于操作系统的身份验证模式、外部身份验证模式和 UKEY 身份验证模式来保护对数据库访问的安全。数据库身份验证模式需要利用数据库口令, 即在创建或修改用户时指定用户口令,用户在登录时输入对应口令进行身份验证;基于操作 系统的身份验证模式使用当前操作系统的用户名登录数据库,数据库中需要存在当前操作系统的同名用户;外部身份验证模式支持 LDAP 身份验证、SSL 身份验证和 KERBEROS 身份验证。

    基于操作系统的身份验证仅支持本机验证,本机验证需要将 DM 配置文件 dm.ini 的 ENABLE_LOCAL_OSAUTH 参数设置为 1(缺省为 0),该参数为静态参数,数据库管理员 可以使用系统过程 SP_SET_PARA_VALUE 进行修改,但修改后需要重新启动 DM 服务器 才能生效。基于操作系统的身份验证需要首先将操作系统用户加入到操作系统的 dmdba|dmsso|dmauditor 用户组,分别对应数据库的 SYSDBA|SYSSSO|SYSAUDITOR 用户。

    本文假设管理员忘记SYSDBA密码的时候,利用启用基于操作系统的身份证验证模式,登录数据库以后再修改密码。

  1. 确保数据库启动的操作系统用户(本例为dmdba),须归属于dmdba组。

[dmdba@dbserver01 DM]$ ps -ef | grep server
dmdba      67632       1  0 22:22 pts/2    00:00:00 /dm8/bin/dmserver path=/dm8/data/DM/dm.ini -noconsole
dmdba      67735   67134  0 22:23 pts/2    00:00:00 grep server
[dmdba@dbserver01 DM]$ 
[dmdba@dbserver01 DM]$ id dmdba
uid=12345(dmdba) gid=12349(dinstall) groups=12349(dinstall),12350(dmdba)

# 以上,实例通过dmdba用户启动,它归属于dmdba组。如果启动用户不归属于dmdba,或dmdba组不存在的话,可以root用户如下操作:

# useradd dmdba
# usermod -G dmdba xxx

   2. 手工修改dm.ini,添加参数配置 ENABLE_LOCAL_OSAUTH = 1

[dmdba@dbserver01 DM]$ pwd
/dm8/data/DM
[dmdba@dbserver01 DM]$ ls -l dm.ini 
-rw-r--r-- 1 dmdba dinstall 73709 Jan 17 22:22 dm.ini
[dmdba@dbserver01 DM]$ 
[dmdba@dbserver01 DM]$ vi dm.ini  # 添加以下内容至文件末尾:
                ENABLE_LOCAL_OSAUTH             = 1

   3. 重启数据库实例后,`disql / as sysdba` 方式登录数据库修改密码。

   备注:此时可以用任意密码(甚至是错误密码)登录sysdba用户。

[dmdba@dbserver01 DM]$ disql sysdba/xxxx as sysdba

Server[LOCALHOST:5236]:mode is normal, state is open
login used time : 4.807(ms)
disql V8
SQL> select * from v$version; 

LINEID     BANNER                           
---------- ---------------------------------
1          DM Database Server 64 V8
2          DB Version: 0x7000c
3          03134284094-20231108-207962-20067

used time: 1.076(ms). Execute id is 501.
SQL> 
SQL> alter user sys identified by dameng123;
executed successfully
used time: 9.643(ms). Execute id is 502.
SQL> 
SQL> connect sysdba/dameng123@localhost:5236

Server[localhost:5236]:mode is normal, state is open
login used time : 2.677(ms)
SQL> 
SQL> select sysdate();

LINEID     SYSDATE()          
---------- -------------------
1          2024-01-17 22:29:28

used time: 1.324(ms). Execute id is 701.
SQL> 

 4. 恢复数据库身份证验证模式,禁用操作系统身份证验证模式:

[dmdba@dbserver01 ~]$ disql / as sysdba

Server[LOCALHOST:5236]:mode is normal, state is open
login used time : 3.344(ms)
disql V8
SQL> alter user sys identified by dameng123;
executed successfully
used time: 44.092(ms). Execute id is 601.
SQL> 
SQL> sp_set_para_value(2,'ENABLE_LOCAL_OSAUTH',0);
DMSQL executed successfully
used time: 2.082(ms). Execute id is 602.
SQL> host DmServiceDM restart
Stopping DmServiceDM:                                      [ OK ]
Starting DmServiceDM:                                      [ OK ]

SQL> connect sysdba/xxx@dm         
[-2501]:Invalid username or password.
SQL> 
SQL> connect sysdba/dameng123@dm

Server[192.168.101.179:5236]:mode is normal, state is open
login used time : 3.311(ms)
SQL> 
SQL> select sysdate();

LINEID     SYSDATE()          
---------- -------------------
1          2024-01-17 22:34:27

used time: 0.961(ms). Execute id is 501.
SQL> show parameter ENABLE_LOCAL_OSAUTH;

LINEID     PARA_NAME           PARA_VALUE
---------- ------------------- ----------
1          ENABLE_LOCAL_OSAUTH 0


# 此时,如果发现dm.ini文件末尾添加的配置(ENABLE_LOCAL_OSAUTH = 1)仍然存在,手工删除即可。

以上,完整模拟了达梦数据库忘记SYSDBA密码的情况下,如何成功修改SYSDBA密码。

 -------------------------------------------------------------------------------------------------

本文来自于我的技术博客 宋小荣-CSDN博客

转载请标注源文链接,否则追究法律责任!

相关文章:

达梦数据库 忘记 SYSDBA 密码 处理方法

DM 提供数据库身份验证模式、基于操作系统的身份验证模式、外部身份验证模式和 UKEY 身份验证模式来保护对数据库访问的安全。数据库身份验证模式需要利用数据库口令, 即在创建或修改用户时指定用户口令,用户在登录时输入对应口令进行身份验证;基于操作 …...

SpringBoot ES 重建 Mapping

SpringBoot ES 重建 Mapping 1 复制数据2 删除老索引3 重建索引4 复制回数据 1 复制数据 POST http://elastic:123456127.0.0.1:9200/_reindex{"source": {"index": "老索引名称"},"dest": {"index": "备份索引名称&q…...

【51单片机】矩阵按键

0、前言 参考&#xff1a;普中 51 单片机开发攻略 1、硬件 2、软件 main.c #include <reg52.h> #include <intrins.h> #include "delayms.h"typedef unsigned int u16; //对数据类型进行声明定义 typedef unsigned char u8; #define GPIO_KEY P1 #d…...

Redis- AOF刷盘策略

在Redis中&#xff0c;appendfsync everysec 是一个与持久化相关的配置选项&#xff0c;它属于 Redis 的 AOF&#xff08;Append Only File&#xff09;持久化策略的一部分。 Redis支持两种主要的数据持久化方式&#xff1a;RDB&#xff08;快照&#xff09;和AOF&#xff08;…...

标量、向量、矩阵和张量的区别?

标量、向量、矩阵和张量是数学和物理学中常用的概念&#xff0c;它们在多维数据表示和处理中扮演着关键角色。下面是这些概念的基本区别&#xff1a; 标量&#xff08;Scalar&#xff09;: -标量是单个数字&#xff0c;用于表示单一的量。 -它没有方向。 -在数学中&#xff0…...

【51单片机】动态数码管

0、前言 参考&#xff1a; 普中51单片机开发攻略–A2.pdf 1、数码管介绍 上一章我们主要是介绍一位数码管的内部结构及控制原理。下面我们再来介 绍下多位数码管及动态显示原理的相关知识。 1.1 多位数码管简介 2、74HC245 和 74HC138 芯片介绍 2.1 74HC245 芯片简介 2.2 7…...

Webpack5入门到原理22:提升打包构建速度

HotModuleReplacement 为什么 开发时我们修改了其中一个模块代码&#xff0c;Webpack 默认会将所有模块全部重新打包编译&#xff0c;速度很慢。 所以我们需要做到修改某个模块代码&#xff0c;就只有这个模块代码需要重新打包编译&#xff0c;其他模块不变&#xff0c;这样…...

EXCEL VBA获取幸运数字号码

EXCELVBA获取幸运数字号码 以下就是VBA幸运号码产生的程序&#xff0c;复制粘贴到VBA代码框即可运行 Option Base 1 Sub 幸运号码()Dim n As Integer, i As Integer, j As IntegerDim l() As Integern Application.InputBox("请输入需要产生幸运号码的数量&#xff1a;…...

【标准IO】fseek函数、ftell函数、fflush函数、getline函数

目录 fseekftellrewindfflushgetline 橙色 当你在文件中写入了10个字符后&#xff0c;又想把这10个字符读出来&#xff0c;该怎么做呢&#xff1f;因为有文件操作符指针的存在&#xff0c;此时该指针已经指在了这10个字符末尾&#xff0c;所以需要把该指针重定向&#xff0c;这…...

VSCODE使用CMAKE显示命令无法找到

背景&#xff1a;使用了code server&#xff0c;安装CMAKE和CMAKE TOOLS&#xff0c;但是通过ctrlshiftp打开命令面板&#xff0c;运行随便一个cmake指令&#xff0c;都出现了指令无法找到。具体为“命令"CMake: 配置"导致错误 (command ‘cmake.configure’ not fou…...

【SpringCloud】微服务框架后端部署详细过程记录20240119

前言&#xff1a;前两天公司接到客户提供的一个微服务框架&#xff0c;导师让我在本地部署验证一下该框架的可用性&#xff0c;借此机会记录一下微服务项目的一个基本部署流程&#xff0c;仅供学习参考&#xff0c;如有不足还请指正&#xff01; 文件结构 提供的压缩文件共包含…...

《设计模式的艺术》笔记 - 桥接模式

介绍 桥接模式将抽象部分与其实现部分分离&#xff0c;使它们都可以独立地变化。它是一种对象结构型模式&#xff0c;又称为柄体模式或接口模式 实现 myclass.h // // Created by yuwp on 2024/1/12. //#ifndef DESIGNPATTERNS_MYCLASS_H #define DESIGNPATTERNS_MYCLASS_H#…...

Redis高并发分布式锁

目录 场景描述 订单扣减场景举例 代码调整1 代码调整2 代码调整3 redisson锁续命核心代码 场景描述 订单扣减场景举例 //首先在redis中set stock 300 RequestMapping("/deduct_stock") public String deductStock() {int stock Integer.parseInt(stringRedi…...

组件开发遇到的问题(vue的问题)

组件的开发和引用 <template><div class"xx">组件</div> </template> <script>export default {name: viewMore,components: {},data() {return {}}} </script> <style scoped>可以定义组件都有的样式 </style> …...

vue3前端开发,感受一下组合式api和VUE2选项式的差异

vue3前端开发,感受一下组合式api和VUE2选项式的差异&#xff01;今天开始&#xff0c;正式开始&#xff0c;进入学习Vue3的内容。以后代码&#xff0c;案例分享&#xff0c;都会采用组合式api的模式为大家做展示。 今天是第一节&#xff0c;带大家感受一下&#xff0c;Vue3的组…...

电梯调度问题文献阅读

电梯调度问题文献阅读 文章目录 电梯调度问题文献阅读[toc]文献阅读1. 陈纪龙,孟洪兵,吴刚等.六层电梯模拟系统的研究与实现[J].伊犁师范学院学报(自然科学版),2014,8(01):57-62.2. 陈福兰,杜虹.浅析电梯并联运行的几种调度方法[J].装备制造技术,2012,(10):178-180190.3. 马春江…...

文心一言 VS 讯飞星火 VS chatgpt (183)-- 算法导论13.4 7题

七、用go语言&#xff0c;假设用 RB-INSERT 将一个结点 x 插入一棵红黑树&#xff0c;紧接着又用 RB-DELETE 将它从树中删除。结果的红黑树与初始的红黑树是否一样&#xff1f;证明你的答案。 文心一言&#xff1a; 首先&#xff0c;我们需要明确RB-INSERT和RB-DELETE的基本操…...

ChatGLM vs ChatGPT

所有的NLP大模型 都是transformer结构 1.Mask attention 的策略不同 2.训练任务目标不同 国内大模型nb公司&#xff1a;百度、清华智谱 一、主流大模型 粉色&#xff1a;Encoder-only。 绿色&#xff1a;Encoder-Decoder&#xff0c;尽头智谱ChatGLM。 蓝色&#xff1a;…...

leetcode热题100.三数之和

Problem: 15. 三数之和 文章目录 题目解题方法复杂度Code 题目 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元…...

GitLab服务器忘记root密码处理方式

GitLab服务器忘记root密码处理方式 文章目录 GitLab服务器忘记root密码处理方式1. Gitlab查看用户id号1. 通过api接口查询2. 在Linux终端里直接通过curl命令查询 2. 进入GitLab数据库中查询并修改root密码 1. Gitlab查看用户id号 1. 通过api接口查询 接口查询地址&#xff1a;…...

js-cookie的使用--token的数据实现持久化

1.下载 npm install js-cookie 2.引入 import Cookies from "js-cookie"; 3.使用 // 写入cookie Cookies.set(name, value) // 读取 Cookies.get(name) // > value Cookies.get(nothing) // > undefined // 读取所有可见的cookie Cookies.get() // 删除某项co…...

【实战】SpringBoot自定义 starter及使用

文章目录 前言技术积累SpringBoot starter简介starter的开发步骤 实战演示自定义starter的使用写在最后 前言 各位大佬在使用springboot或者springcloud的时候都会根据需求引入各种starter&#xff0c;比如gateway、feign、web、test等等的插件。当然&#xff0c;在实际的业务…...

网络爬虫采集工具

在当今数字化的时代&#xff0c;获取海量数据对于企业、学术界和个人都至关重要。网络爬虫成为一种强大的工具&#xff0c;能够从互联网上抓取并提取所需的信息。本文将专心分享关于网络爬虫采集数据的全面指南&#xff0c;深入探讨其原理、应用场景以及使用过程中可能遇到的挑…...

【协议】XMLHttpRequest的梳理和总结

1. 前言 本篇梳理和总结一下XMLHttpRequest。 2. XMLHttpRequest原型对象的属性和方法 属性和方法说明示例new XMLHttpRequest() 功能&#xff1a;创建XHR对象 输入&#xff1a; 输出&#xff1a;XHR实例化对象 <略> XMLHttpRequest.prototype .open(method, url, asyn…...

AI教我学编程之C#类的基本概念(1)

前言 在AI教我学编程之C#类型 中&#xff0c;我们学习了C#类型的的基础知识&#xff0c;而类正是类型的一种. 目录 区分类和类型 什么是类&#xff1f; 对话AI 追问 实操 追踪属性的使用 AI登场 逐步推进 提出疑问 药不能停 终于实现 探索事件的使用 异步/交互操作 耗时操…...

前端js 数据结构:对象 object、数组Array 、Map 的创建、增删改 / 遍历数据

目录 前端js 数据结构&#xff1a;对象、数组、Map 的使用1 对象&#xff08;object&#xff09;1.1 创建对象1.1.1 对象字面量(最常用): {}1.1.2 使用 new 关键字和对象构造函数1.1.3 Object.create() 1.2 修改对象1.2.1 直接赋值&#xff1a;对象的属性名直接赋值1.2.2 点号/…...

ARM_Linux的NFS网络文件系统的搭建

介绍&#xff1a; NFS是network filesystem的简称&#xff0c;可以不同的主机通过网络访问远端的NFS服务器共享出来的文件&#xff0c;这样主机通过网络访问NFS服务器&#xff0c;我们就可以在开发板上通过网络访问主机的文件。 为什么要使用NFS网络文件呐&#xff1f; 1、传…...

vscode配置web开发环境(WampServer)

这里直接去下载了集成的服务器组件wampserver&#xff0c;集成了php&#xff0c;MySQL&#xff0c;Apache 可能会出现安装问题&#xff0c;这里说只有图上这些VC包都安装了才能继续安装&#xff0c;进入报错里提供的链接 在页面内搜索相关信息 github上不去可以去镜像站 下载…...

00-Rust前言

问&#xff1a;为什么要近期想学习Rust? 答&#xff1a; Rust出来也是有一段时间了&#xff0c;从Microsoft吵着要重构他们的C"祖传代码"开始&#xff0c;Rust就披着“高效&#xff0c;安全”的头衔。而自己决定要学习Rust&#xff0c;是因为近期发现&#xff1a;涉…...

3.conda的使用

anaconda安装 ubuntu 安装conda 系统架构 uname -m打开终端&#xff0c;不启动base conda config --set auto_activate_base falseconda命令使用 1.查看conda版本 conda --version2.查看conda配置环境 conda config --show3.设置镜像 #设置清华镜像 conda config --add…...