暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

openGauss每日一练第11天 | 逻辑结构数据库管理

原创 dodou 2022-12-04
198

学习目标

数据库是数据库对象的容器,在数据库中,可以创建模式、表、索引等数据库对象。openGauss数据库管理包括:创建数据库、删除数据库、重新命名数据库、查看数据库的信息。
创建一个新的数据库。缺省情况下,新数据库将通过复制标准系统数据库template0来创建,且仅支持使用template0来创建。

课程作业

1.创建表空间enmtbs和数据库musicdb

创建表空间语句 CREATE TABLESPACE tbsname RELATIVE LOCATION ‘abc/def’;
创建数据库时可以指定表空间,以后在该库下建表 则默认使用该表空间

CREATE TABLESPACE enmtbs RELATIVE LOCATION 'tablespace/enmtbs1'; CREATE DATABASE musicdb WITH TABLESPACE = enmtbs;

2.查看数据库集簇中有哪些数据库

两种方式

SELECT datname FROM pg_database; 或 \l

3.查看数据库默认的表空间信息

两种方式

--首先执行下面的语句,查看musicdb数据库默认表空间的对象OID: select datname,dattablespace from pg_database where datname='musicdb'; --根据表空间对象的OID,来查看表空间的名字: select oid,spcname from pg_tablespace where oid=16389; --可以将上面的两条语句合并成一条语句,来查询数据库musicdb默认表空间的名字: select spcname from pg_tablespace where oid=( select dattablespace from pg_database where datname='musicdb' );

4.查看数据库下有哪些模式

\dn+ --或 SELECT catalog_name, schema_name, schema_owner FROM information_schema.schemata;

5.查询当前连接的数据库下有哪些表:

这里也可以看到with语句的使用,感觉像是临时表或者视图

with my_tables(table_catalog, table_schema, table_name, table_type) as ( select table_catalog, table_schema, table_name, table_type from information_schema.tables where table_schema not in ('pg_catalog', 'information_schema','dbe_perf') ) select * from my_tables;

6.更改数据库默认的表空间

CREATE TABLESPACE app_ts RELATIVE LOCATION 'tablespace/app_ts1'; ALTER DATABASE musicdb SET TABLESPACE app_ts; --查看表空间是否更改完成 select spcname from pg_tablespace where oid=( select dattablespace from pg_database where datname='musicdb' );

7.重新命名数据库

ALTER DATABASE musicdb RENAME TO musicdb1;

8.修改数据库的默认用户

CREATE USER user2 IDENTIFIED BY 'user2@1234'; ALTER USER user2 SYSADMIN; ALTER DATABASE musicdb OWNER to user2;

9.删除数据库

drop database musicdb1;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论