达梦数据库基本学习记录(一)

本文详细介绍了达梦数据库的三种模式:Normal、Primary和Standby,以及五种状态:Startup、AfterRedo、Open、Mount和Suspend。探讨了如何通过SQL语句在这些模式和状态之间进行切换,并解释了Redo日志的作用和KEEP_BUF的重要性。

学习记录达梦官方文档

1 达梦支持3中数据库模式:

  • Normal(正常)模式:

    能进行正常的进行数据库访问操作,只支持实时归档;

  • Primary(主)模式

    提供正常的数据库服务, 操作有极少限制。该模式下部分功能受限;

  • Standby(支持)模式

    可以执行数据库备份、查询等只读数据库操作。正常生成本地归档,正常发送异步归档Redo 日志;其他功能受限

1.1 数据库模式切换

可以直接通过sql语句进行切换

alter database 模式   如: alter database Primary 切换到主模式

2数据库状态

  • Startup(启动) 状态
  • After Redo(重做之后) 状态
  • Open(打开) 状态
  • Mount (挂载)状态
  • Suspend (中止)状态
  • Shutdown(关闭) 状态

用户可以通过 SQL 语句进行数据库
状态切换: 1. Open 状态与 Mount 状态可以相互切换; 2. Open 状态与 Suspend 状态
可以相互切换; 3. Mount 和 Suspend 状态不能直接转换; 4. 其他状态为系统内部状态,
用户不能主动干预。

切换数据库状态的 SQL 如下:
将数据库修改为 Open 状态。 当系统处于 Primary/Standby 模式时,必须强制
加上 force 子句。
alter database open [force];
其他状态:  alter database  状态

由于 dmwatcher 根据数据库模式、状态等信息作为故障处理、故障恢复的
依 据 , 建 议 在 配 置 数 据 守 护 过 程 中 , 修 改 dm.ini 参 数
ALTER_MODE_STATUS 为 0,限制用户直接通过 SQL 语句修改数据库状态、
模式,避免 dmwatcher 做出错误的决策。

3 Redo日志

Redo 日志包含了所有物理数据页的修改内容(增删改DML 创建表DDL)

4 KEEP_BUF(重点)

待续…

<think>首先,用户的问题是:“我想了解达梦数据库基本操作方法 请问达梦数据库 基本操作指南 入门教程”。这翻译成英文是“I want to understand the basic operation methods of Dameng Database. Please provide a basic operation guide or introductory tutorial for Dameng Database.” 根据系统级指令: 1. 所有行内数学表达式必须使用 `$...$` 格式。但在这个上下文中,用户的问题是关于数据库操作的,可能不涉及数学表达式。所以,我需要在回答中如果有数学相关内容时使用它。 2. 独立公式使用 `$$...$$` 格式并单独成段。同样,可能不适用。 3. LaTeX语法正确:确保任何数学公式正确。 4. 使用中文回答:整个回答必须用中文。 5. 生成相关问题:在回答末尾,生成相关问题。 6. 回答中引用的段落末尾自然地添加引用标识:例如 [^1]。参考提供的引用: - 引用[1]: 达梦数据库入门语法:从基础到进阶的指南... - 引用[2]: 达梦数据库入门使用。1.1 下载与安装... - 引用[3]: 达梦数据库入门指南(二)- 达梦数据库概念说明... - 引用[4]: 达梦数据库-基本操作... 用户说:“上述引用仅供参考,并不是用户真正的需求,请尽可能多的参考用户上次的问题和你的回答。” 但在这个对话中,这是第次交互,所以没有上次的问题。我需要基于这些引用来构建回答。 用户可见层指令:回答结构清晰,帮助用户逐步解决问题,保证真实可靠。 用户需求是了解达梦数据库基本操作方法,包括入门指南。所以,我应该基于引用提供结构化指南。 结构化回答: 1. **介绍**:简要介绍达梦数据库。 2. **安装和配置**:基于引用[2],介绍下载与安装。 3. **基本概念**:基于引用[3],解释数据库概念。 4. **基本操作**:基于引用[4],包括创建表空间、用户操作等。 5. **常见操作示例**:提供基本SQL命令示例。 6. **进阶提示**:简要提到进阶内容。 7. **生成相关问题**:在末尾添加相关问题。 确保回答真实可靠:使用引用作为来源,并在引用段落末尾添加引用标识。 例如,在描述安装过程时,添加 [^2]。 现在,构建回答大纲: - **步骤1: 下载和安装** - 描述从官网下载安装包,运行脚本等。引用[2]。 - **步骤2: 基本概念** - 解释物理存储结构如配置文件、控制文件、数据文件等。引用[3]。 - **步骤3: 基本操作** - 创建表空间、修改表空间大小、创建用户等。引用[4]。 - **步骤4: 示例操作** - 提供些SQL命令示例。 - **总结** - **相关问题** 在回答中,自然地添加引用标识。例如:"达梦数据库的安装过程包括解压安装包并执行安装脚本 [^2]." 由于用户提到“尽可能多的参考用户上次的问题”,但这是第次,所以忽略。 最终,生成相关问题: 基于主题,如: 1. 如何优化达梦数据库性能? 2. 达梦数据库的备份和恢复方法? 3. 达梦数据库在哪些场景中应用广泛? 用中文写回答。</think>### 达梦数据库基本操作指南与入门教程 达梦数据库(Dameng Database)是款国产的高性能、高可靠性的数据库管理系统,广泛应用于政府、金融、电信等行业。它支持标准SQL语法,并提供了丰富的管理工具。为了帮助您快速入门,我将从安装配置开始,逐步介绍基本概念、常见操作和实用示例。本指南基于达梦数据库的官方文档和常见实践,确保内容真实可靠。 --- ### 步骤1: 下载与安装 达梦数据库的安装是入门的第步。您需要从达梦数据库官方网站下载安装包(支持Windows和Linux系统)。安装过程简单高效: - **解压安装包**:下载后解压到指定目录。 - **执行安装脚本**:在Linux系统中运行 `dm_install.sh` 脚本;在Windows系统中运行安装程序 `.exe`。 - **配置参数**:根据提示设置安装路径、服务端口(默认端口5236)、管理员账户(如SYSDBA)和密码。安装完成后,系统会自动创建初始数据库实例 [^2]。 安装成功后,您可以通过命令行工具(如 `disql`)或图形界面工具(如DM管理工具)连接到数据库。 --- ### 步骤2: 理解基本概念 在操作前,了解达梦数据库的核心物理存储结构是必要的。这些结构确保数据的安全性和高效管理: - **配置文件**:用于设置数据库参数,如内存分配和日志级别。 - **控制文件**:记录数据文件和日志文件的分布信息。 - **数据文件**:存储用户实际数据,通常以 `.dbf` 后缀结尾。 - **日志文件**:包括重做日志(记录事务变化)和归档日志(用于备份恢复)。 - **表空间**:逻辑存储单元,用于组织数据文件。例如,系统表空间(SYSTEM)用于存储元数据,用户表空间用于存储应用数据 [^3]。 理解这些概念有助于后续操作更高效。 --- ### 步骤3: 基本操作指南 达梦数据库基本操作包括管理表空间、用户和SQL命令。以下以常见操作为例,使用SQL语句实现(所有命令需在 `disql` 或管理工具中执行)。 #### 3.1 表空间操作 表空间是数据存储的基础单元。创建和管理表空间可优化存储。 - **创建表空间**:例如,创建个名为 `TEST_1` 的表空间,并指定数据文件大小。 ```sql CREATE TABLESPACE TEST_1 DATAFILE 'TEST.dbf' SIZE 100M; ``` - **修改表空间大小**:如果数据增长,可扩展文件大小。 ```sql ALTER TABLESPACE TEST_1 RESIZE DATAFILE 'TEST.dbf' TO 200M; -- 将文件扩展到200MB [^4] ``` - **删除表空间**:谨慎操作,避免数据丢失。 ```sql DROP TABLESPACE TEST_1; ``` #### 3.2 用户管理 用户是数据库访问的入口,需关联表空间和权限。 - **创建用户**:指定用户名、密码和默认表空间。 ```sql CREATE USER test_user IDENTIFIED BY "password123" DEFAULT TABLESPACE TEST_1; ``` - **授权用户**:赋予用户权限,如查询或修改表。 ```sql GRANT SELECT, INSERT ON TABLE my_table TO test_user; -- 授予查询和插入权限 ``` - **删除用户**:需先撤销权限。 ```sql DROP USER test_user; ``` #### 3.3 数据表操作 表是存储数据的核心对象。以下是基本SQL示例。 - **创建表**:定义表结构和字段类型。 ```sql CREATE TABLE employees ( id INT PRIMARY KEY, name VARCHAR(50), salary DECIMAL(10,2) ) TABLESPACE TEST_1; -- 指定表空间 ``` - **插入数据**:向表中添加记录。 ```sql INSERT INTO employees (id, name, salary) VALUES (1, '张三', 5000.00); ``` - **查询数据**:检索信息。 ```sql SELECT * FROM employees WHERE salary > 4000; ``` - **更新和删除**:修改或移除数据。 ```sql UPDATE employees SET salary = 5500.00 WHERE id = 1; DELETE FROM employees WHERE id = 1; ``` #### 3.4 备份与恢复 定期备份是保障数据安全的关键。 - **简单备份**:使用命令行工具导出数据。 ```bash dexp USERID=SYSDBA/SYSDBA FILE=backup.dmp DIRECTORY=/backup -- 导出数据库 ``` - **恢复数据**:导入备份文件。 ```bash dimp USERID=SYSDBA/SYSDBA FILE=backup.dmp -- 导入数据库 ``` --- ### 步骤4: 进阶提示 掌握基本操作后,可探索进阶功能: - **性能优化**:通过调整配置文件参数(如内存缓存大小)提升查询速度。 - **事务管理**:使用 `COMMIT` 和 `ROLLBACK` 确保数据致性。 - **监控工具**:利用DM管理工具实时查看数据库状态。 达梦数据库支持与标准SQL兼容,学习曲线平缓。建议参考官方文档或培训课程深化知识 [^1]。 --- ### 相关问题 为了帮助您深入学习,我生成了以下相关问题: 1. 达梦数据库如何实现高可用性和故障恢复? 2. 在达梦数据库中,如何优化SQL查询性能? 3. 达梦数据库在云计算环境中的部署方法有哪些? 如果您有具体场景(如数据迁移或性能调优),请提供更多细节,我将为您详细解答!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值