达梦:【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
   
相关推荐
失心疯_202334 分钟前
006.MySQL_查询数据
数据库·sql·mysql·关系型数据库·sqlyog·mysql教程·查询语句
环能jvav大师42 分钟前
基于R语言的统计分析基础:使用SQL语句操作数据集
开发语言·数据库·sql·数据分析·r语言·sqlite
骆晨学长1 小时前
基于springboot的智慧社区微信小程序
java·数据库·spring boot·后端·微信小程序·小程序
@月落1 小时前
alibaba获得店铺的所有商品 API接口
java·大数据·数据库·人工智能·学习
楠枬1 小时前
MySQL数据的增删改查(一)
数据库·mysql
goTsHgo1 小时前
从底层原理上解释 clickhouse 保证完全的幂等性
数据库·clickhouse
阿华的代码王国3 小时前
MySQL ------- 索引(B树B+树)
数据库·mysql
Hello.Reader3 小时前
StarRocks实时分析数据库的基础与应用
大数据·数据库
执键行天涯3 小时前
【经验帖】JAVA中同方法,两次调用Mybatis,一次更新,一次查询,同一事务,第一次修改对第二次的可见性如何
java·数据库·mybatis
yanglamei19623 小时前
基于GIKT深度知识追踪模型的习题推荐系统源代码+数据库+使用说明,后端采用flask,前端采用vue
前端·数据库·flask