达梦:【1】达梦常用操作

达梦:【1】达梦常用操作

一、登录达梦

sql 复制代码
./disql username/password@ip:port
> select * from dual;

二、创建表空间及用户模式

1、一个用户下可以有多个模式名,一个模式只能跟着一个用户,创建用户会自己生成模式,先创建表空间,再创建用户绑定表空间

sql 复制代码
create tablespace "表空间名称" datafile '表空间名称.DBF' size 32 CACHE = NORMAL;  --创建表空间
create user 用户名称 identified by 用户密码 default tablespace 表空间名称;  --创建用户

2、创建模式

sql 复制代码
CREATE SCHEMA "模式名称" AUTHORIZATION "SYSDBA";

三、查看表空间、用户、模式

1、查看表空间

sql 复制代码
select * from dba_data_files;  --查看所有表空间
select * from dba_free_files;  --查看所有剩余表空间

2、查看用户

sql 复制代码
select * from dba_users;  --查看所有用户

3、查看模式

sql 复制代码
SELECT DISTINCT object_name FROM ALL_OBJECTS WHERE OBJECT_TYPE = 'SCH'  --查询所有的模式名

4、查看模式所属用户

sql 复制代码
select
        SCH_OBJ.NAME   ,
        SCH_OBJ.ID     ,
        SCH_OBJ.CRTDATE,
        USER_OBJ.NAME
from
        (
                select NAME, ID, PID, CRTDATE from SYS.SYSOBJECTS where TYPE$='SCH'
        )
        SCH_OBJ,
        (
                select NAME, ID from SYS.SYSOBJECTS where TYPE$='UR' and SUBTYPE$='USER'
        )
        USER_OBJ
where
        SCH_OBJ.PID=USER_OBJ.ID
ORDER BY
        SCH_OBJ.NAME;

5、查看用户所属角色

sql 复制代码
SELECT * FROM DBA_ROLE_PRIVS WHERE GRANTEE='用户名'

四、系统查询

1、查看达梦版本

sql 复制代码
select name,create_time from v$database;

2、查看数据库大小写是否敏感

sql 复制代码
SELECT CASE_SENSITIVE();

3、查看用户权限角色

sql 复制代码
select * from DBA_SYS_PRIVS ;

4、查看所有用户

sql 复制代码
select username from dba_users;

5、查看表空间

sql 复制代码
select TABLESPACE_NAME from user_tablespaces;

6、查看指定表字段

sql 复制代码
select * from all_tab_columns where owner='用户名' and Table_Name='表名';

五、角色管理

1、查询角色的权限

sql 复制代码
select * from dba_sys_privs where grantee='角色名';

2、创建角色

sql 复制代码
CREATE ROLE 角色名;

3、给角色授予resource和public的权限

sql 复制代码
GRANT CREATE TABLE,CREATE INDEX TO 角色名;

4、给角色授予创建表和索引的权限

sql 复制代码
GRANT CREATE TABLE,CREATE INDEX TO 角色名;

5、给角色授予查询DMHR模式下CITY表的查询权限

sql 复制代码
GRANT SELECT ON DMHR.CITY TO 角色名;

6、授予角色的权限给用户

sql 复制代码
GRANT 角色名 TO 用户名;

7、回收用户的角色权限

sql 复制代码
REVOKE 角色名 FROM 用户名;

8、启用角色

sql 复制代码
sp_set_role('角色名',1);

9、禁用角色

sql 复制代码
sp_set_role('角色名',0);

10、删除角色

sql 复制代码
DROP ROLE 角色名;

六、本地连多台数据库(RAC)

1、服务器创建文件【/etc/dm_svc.conf】,写入如下内容

sql 复制代码
TIME_ZONE=(480)
LANGUAGE=(cn)
SUPERIP=(123.123.123.1:5236,123.123.123.2:5236,123.123.123.3:5236)

#EP_SGLJYTOR 0:均匀分布1:定向连接服务名的第T个IP,
#每次定向连接服务名的第一个IP。当IP1发生故障,间隔1s进行重连,尝试60次,若无
#法连接,再自动连接IP2。若IP2先起来,IP1后起来。因为AUT0_RECONNECT=(1),所以连
#接在IP2的连接不会切回IP1上。

[SUPERIP]
LOGIN_MODE=(1)
SWITCH_TIMES=(60)
SWITCH_INTERVAL=(1000)
EP_SGLJYTOR=(1)
AUTO_RECONNECT=(1)

2、应用连接配置

sql 复制代码
<driver>dm.jdbc.driver.DmDriver</driver>
<url>jdbc:dm://SUPERIP</url>

3、应用连接达梦数据库【指定schema1用户多个schema】

sql 复制代码
# 达梦 模式名就相当于库名
# 写法一【本人使用此种】
    url: jdbc:dm://localhost:5236?schema=PERSON&compatibleMode=mysql&characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
#写法二【尝试过失败】
    #url: jdbc:dm://localhost:5236/PERSON&compatibleMode=mysql&characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
   
相关推荐
l1t26 分钟前
DeepSeek总结的DuckDB 2.0.0 中的隐藏亮点
大数据·数据库·duckdb
程序员塔塔喵38 分钟前
【MySQL篇|第八篇】索引底层实现
数据库·mysql·adb·索引
updayday8541 小时前
电脑换了硬盘、加了内存,资产台账却没更新 - Ping64 硬件资产管理
大数据·网络·数据库·安全·智能路由器
hhhjhl1 小时前
mime-types 跨端三方库仓颉适配全流程
数据库
广州智造1 小时前
Radioss中破坏模型FAILTAB1的详细介绍
数据库·人工智能·算法·机器学习·仿真软件·radioss
李兆龙的博客1 小时前
从一到无穷大 #101:SSD 的工作原理——从 NAND 到数据库读写
数据库·ssd·存储
吹什么轩1 小时前
MySQL 内置函数全景:日期 / 字符串 / 数学 / 其他,一次讲透(附索引杀手排查)
java·数据库·面试
CS创新实验室1 小时前
改了模型,数据库为什么能自动跟上?——Django 迁移(migrations)的底层
数据库·django·sqlite
编码追梦人2 小时前
基于 ESP32-S3 的便携式多参数环境监护仪设计:从硬件选型到 FreeRTOS 多任务落地
数据库·单片机·嵌入式硬件·mongodb·esp32·freertos·低功耗设计
sunburn-2 小时前
数据库增删改查:从 SQL 基础到实践要点
java·数据库·mysql