Skip to content

达梦数据库常用命令

常用SQL命令

sql
// 添加新字段
ALTER TABLE "数据库名"."表名" ADD 字段名 字段类型; 
例:
ALTER TABLE "SZZY"."feedback_info" ADD mark VARCHAR2(256);

// 添加新字段,并设置默认值
ALTER TABLE "数据库名"."表名" ADD 字段名 字段类型 DEFAULT 默认值;

// 清空表
//DELETE语句用于从表中删除一行或多行数据。如果你想要删除表中的所有行,可以省略WHERE子句。但是请注意,DELETE操作是DML(数据操纵语言)操作,它会生成大量的REDO日志和UNDO记录,并且如果表上有关联的触发器,每删除一行都会触发一次触发器,这可能会消耗大量的系统资源。
DELETE FROM 表名;

// 删除表
DROP TABLE 表名;

//TRUNCATE语句用于快速删除表中的所有行,并且释放表所占用的空间。与DELETE语句不同,TRUNCATE是一个DDL(数据定义语言)操作,它不会触发触发器,也不会记录任何单独的行的删除操作。因此,它通常比DELETE语句更快。
TRUNCATE TABLE 表名;

// 修改字段长度
ALTER TABLE 表名 MODIFY COLUMN 字段名 新类型(新长度);
例:
ALTER TABLE students MODIFY COLUMN name VARCHAR2(50);

// 修改字段类型
ALTER TABLE 表名 MODIFY COLUMN 字段名 新类型;
例:
ALTER TABLE students MODIFY COLUMN age VARCHAR2(10);

// 给字段添加备注
COMMENT ON COLUMN "数据库名"."表名"."字段名" IS '备注内容';

// 插入数据
INSERT INTO ITMP_CONFIG.USERS (USERNAME, PASSWORD, ENABLED) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);

// 创建表空间
create tablespace TEST datafile '/home/dmdba/opt/dmdbms/data/DAMENG/TEST.DBF' size 50;
// windowws:
create tablespace "itmp" datafile 'C:\dmdbms\data\DAMENG\itmp' size 90 autoextend on maxsize 16777215 CACHE = NORMAL;

// 创建用户
create user test1 identified by "password" default tablespace test;
// 更详细的
create user "ITMP" identified by "password" hash with SHA512
        limit failed_login_attemps 3, password_lock_time 1, password_grace_time 10
        default tablespace "itmp"
        default index tablespace "itmp";
        grant "PUBLIC","VTI","SOI" to "ITMP";
        grant CREATE SESSION to "ITMP";

// 列注释
comment on column test_rename.id is 'Primary';

常用DM工具命令

bash
// 连接DM数据库
disql USER/'"PASSWORD"';
例:
disql ITMP_PRODUCT_MANAGEMENT/'"123456"'

// 导出全部数据
./dexp SYSDBA/'"SYSDBA"'@127.0.0.1:5236 FILE=ITMP_FULL_20221115.dmp DIRECTORY=/opt/dataTemp log=ITMP_FULL_20221115.log  FULL=Y

// 导出单个库的数据
./dexp ITMP_PRODUCT_MANAGEMENT/'"123456"'@127.0.0.1:5236 SCHEMAS="ITMP_PRODUCT_MANAGEMENT" FILE=ITMP_PRODUCT_MANAGEMENT_20221115.dmp DIRECTORY=/opt/dataTemp/20221115 log=$DATA_LOG/ITMP_PRODUCT_MANAGEMENT20221115.log
// windows中
dexp SYSDBA/SYSDBA@127.0.0.1:5236 SCHEMAS="KIOSK_CMS_NEW_V2" FILE=KIOSK_CMS_NEW_V2_20240513.dmp DIRECTORY=D: log=20220513.log

// 导入数据
./dimp ITMP_PRODUCT_MANAGEMENT/'"Admin$123456"'@127.0.0.1:5236 FILE=ITMP_PRODUCT_MANAGEMENT.dmp DIRECTORY=/opt/dataTemp SCHEMAS="ITMP_PRODUCT_MANAGEMENT" IGNORE=N COMPILE=N INDEXFIRST=N TABLE_FIRST=N SHOW_SERVER_INFO=N COMMIT_ROWS=5000 FAST_LOAD=N LOG=imp_2022_11_09_15_01_45.log EXCLUDE=INDEXES,CONSTRAINTS,TRIGGERS,GRANTS TABLE_EXISTS_ACTION=REPLACE LOG_WRITE=N

// 创建数据库:
CREATE SCHEMA "ITMP_CONFIG" AUTHORIZATION "ITMP_CONFIG";

权限相关

bash
// 查看失败限制次数、失败尝试次数和锁定时间
--达梦数据库用户登录限制查询
select 
b.username as "达梦数据库用户名",
a.failed_num as "失败次数限制",
a.failed_attemps as "失败尝试次数",
a.lock_time as "锁定时间(min)" 
from sysusers a right join all_users b on a.id=b.user_id;


// 达梦数据库用户锁定状态查询
select 
username as "达梦数据库用户名", 
account_status as "账户状态",
lock_date as "锁定时间" 
from dba_users;

// 账户解锁
alter user TOPICPSP account unlock;

// 查看失败限制次数、失败尝试次数和锁定时间
select 
b.username as "达梦数据库用户名",
a.failed_num as "失败次数限制",
a.failed_attemps as "失败尝试次数",
a.lock_time as "锁定时间(min)" 
from sysusers a right join all_users b on a.id=b.user_id;

// 达梦数据库用户锁定状态查询
select 
username as "达梦数据库用户名", 
account_status as "账户状态",
lock_date as "锁定时间" 
from dba_users;


// 取消用户的资源限制(可选)
alter user "TOPICPSP" limit  failed_login_attemps unlimited, password_lock_time unlimited, password_grace_time unlimited;

上次更新于: