达梦:【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、应用连接达梦数据库【指定schema[1用户多个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
   
相关推荐
云和数据.ChenGuang5 小时前
Django 应用安装脚本 – 如何将应用添加到 INSTALLED_APPS 设置中 原创
数据库·django·sqlite
woshilys5 小时前
sql server 查询对象的修改时间
运维·数据库·sqlserver
Hacker_LaoYi5 小时前
SQL注入的那些面试题总结
数据库·sql
建投数据6 小时前
建投数据与腾讯云数据库TDSQL完成产品兼容性互认证
数据库·腾讯云
Hacker_LaoYi7 小时前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀7 小时前
Redis梳理
数据库·redis·缓存
独行soc7 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
你的微笑,乱了夏天8 小时前
linux centos 7 安装 mongodb7
数据库·mongodb
工业甲酰苯胺8 小时前
分布式系统架构:服务容错
数据库·架构
独行soc9 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘