达梦:【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
   
相关推荐
兩尛1 小时前
订单状态定时处理、来单提醒和客户催单(day10)
java·前端·数据库
web2u1 小时前
MySQL 中如何进行 SQL 调优?
java·数据库·后端·sql·mysql·缓存
Elastic 中国社区官方博客2 小时前
使用 Elasticsearch 导航检索增强生成图表
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
小金的学习笔记2 小时前
RedisTemplate和Redisson的使用和区别
数据库·redis·缓存
新知图书3 小时前
MySQL用户授权、收回权限与查看权限
数据库·mysql·安全
文城5213 小时前
Mysql存储过程(学习自用)
数据库·学习·mysql
沉默的煎蛋3 小时前
MyBatis 注解开发详解
java·数据库·mysql·算法·mybatis
呼啦啦啦啦啦啦啦啦3 小时前
【Redis】事务
数据库·redis·缓存
HaoHao_0103 小时前
AWS Serverless Application Repository
服务器·数据库·云计算·aws·云服务器
C语言扫地僧3 小时前
MySQL 事务及MVCC机制详解
数据库·mysql