达梦数据库DISQL dca证书学习

本文介绍了达梦数据库的参数配置,包括静态和动态参数的区别,以及对应的Oracle Scope概念。动态参数可通过修改配置文件和内存立即生效,而静态参数需要重启后生效。文章详细阐述了参数修改方式,如修改UNDO_RETENTION和LIST_TABLE,并提到了系统函数SP_SET_PARA_*_VALUE用于不同类型的参数修改。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一步:参数配置
参数类型

 SQL> SELECT  DISTINCT  TYPE FROM V$PARAMETER;       

行号 TYPE


1 READ ONLY
2 SYS
3 IN FILE
4 SESSION

已用时间: 55.810(毫秒). 执行号:600.

对应到Oracle的Scope

both:即修改内存的值、也修改配置文件的值,重启不重启都生效(动态参数
spfile:只修改配置文件中的值,重启数据库生效(静态参数
memory:修改内存的值,重启数据库后恢复设置前的样子

达梦数据库分静态参数和动态参数

静态参数 修改配置文件,重启生效
动态参数 修改配置文件和内存,立即生效
read only 只读参数,不能通过系统函数/sql命令修改,只能从dm.ini配置文件中修改,重启生效
静态(IN FILE)参数:,只能从dm.ini配置文件中修改,重启生效,为系统参数,生效后影响所有会话
动态(sys和session)参数:可在dm.nin和内存中同时修改,修改后立即生效。SYS为系统级参数,修改后影响所有会话;SESSION 为会话级参数,服务器运行过程中被修改,之前创建的会话不受影响。**

二、参数修改方式

 ### 1、参数修改
         read  only  只读参数,不能通过系统函数/sql命令修改,只能从dm.ini配置文件中修改,重启生效
        在cd /dm8/data/**数据库名称**/dm.ini里面修改
 ### 2、SQL语句修改
          **后面跟得是参数范围**
 alter system set '参数名'=
### 如何使用达梦数据库DISQL 客户端通过指定端口进行登录 要通过 DISQL 客户端并指定端口登录达梦数据库,可以按照以下方式进行操作: #### 方法一:CMD 命令行方式 在 Windows 系统中,可以通过命令提示符(CMD)进入达梦数据库安装目录下的 `bin` 文件夹,并使用 `disql` 命令完成登录。 1. 打开 CMD 并切换至达梦数据库的 `bin` 目录: ```bash cd C:\dmdbms\bin\ ``` 2. 输入 `disql` 命令并提供完整的连接参数。以下是通用格式: ```bash disql 用户名/密码@主机地址:端口号 ``` 例如,假设用户名为 `SYSDBA`,密码为 `SYSDBA`,目标服务器 IP 地址为 `localhost`,端口号为 `5236`,则命令如下: ```bash disql SYSDBA/SYSDBA@localhost:5236 ``` 如果成功,则会进入 DISQL 字符界面[^1]。 #### 方法二:图形化菜单方式 另一种方法是通过系统的开始菜单启动 DISQL 工具。 1. 在 Windows 开始菜单中找到 **达梦数据库** -> **SQL 交互式查询工具**。 2. 启动后,在字符界面上输入 `LOGIN` 或者 `CONN` 命令来手动设置连接参数。例如: ```sql LOGIN SYSDBA/SYSDBA@localhost:5236; ``` 此处需要注意的是,当使用 `LOGIN` 或 `CONNECT` 命令时,如果已经存在旧会话,新的会话将会自动断开之前的连接[^2]。 #### 解决“未连接”问题 如果遇到 “未连接” 错误消息,可能的原因包括但不限于网络配置错误、服务未正常启动或防火墙阻止访问等问题。此时可尝试以下排查措施: - 验证数据库服务是否已启动; - 检查本地防火墙规则是否有阻拦特定端口的数据传输; - 确认所提供的用户名、密码以及端口号无误[^3]。 ```python # 示例 Python 脚本用于验证端口连通性 import socket def check_port(host, port): sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: result = sock.connect_ex((host, int(port))) if result == 0: print(f"Port {port} is open on host {host}.") else: print(f"Port {port} is not reachable on host {host}.") except Exception as e: print(e) check_port('localhost', '5236') ``` 以上代码可以帮助测试目标主机上的指定端口是否开放。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值