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

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

原创 听风 丶 2022-12-04
236

一、学习目标

了解openGauss逻辑结构:数据库管理
创建一个新的数据库。缺省情况下,新数据库将通过复制标准系统数据库template0来创建,且仅支持使用template0来创建。

二、课程学习

数据库是数据库对象的容器,在数据库中,可以创建模式、表、索引等数据库对象。

openGauss数据库管理包括:创建数据库、删除数据库、重新命名数据库、查看数据库的信息。

三、课程作业

测试环境准备:

  • 连接数据库:
    image.png
  • 清除已有的环境:
    image.png
  • 此时环境如下
    image.png
    image.png

可以开始进行操作了!

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

su - omm
gsql -r
CREATE TABLESPACE enmtbs RELATIVE LOCATION ‘tablespace/enmtbs1’;
CREATE DATABASE musicdb WITH TABLESPACE = enmtbs;
image.png

补充,数据库musicdb基于表空间enmtbs

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

  • SELECT datname FROM pg_database;
    image.png

  • \l
    image.png

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

首先执行下面的语句,查看musicdb数据库默认表空间的对象OID:
select datname,dattablespace from pg_database where datname=‘musicdb’;
image.png

根据表空间对象的OID,来查看表空间的名字:
select oid,spcname from pg_tablespace where oid=16389;
image.png

熟悉这两步后可以合并->将上面的两条语句合并成一条语句,来查询数据库musicdb默认表空间的名字:
select spcname
from pg_tablespace
where oid=( select dattablespace
from pg_database
where datname=‘musicdb’ );
image.png

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

\dn+
image.png

SELECT catalog_name, schema_name, schema_owner FROM information_schema.schemata;
image.png

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

with查询(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’)
)
image.png

调用my_tables以及查询语句,来查询当前连接的数据库下有哪些表:
select * from my_tables;
image.png

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

1.创建新的表空间app_ts1:CREATE TABLESPACE app_ts RELATIVE LOCATION ‘tablespace/app_ts1’;
2.更改数据库默认的表空间:ALTER DATABASE musicdb SET TABLESPACE app_ts;
3.查看修改
select spcname
from pg_tablespace
where oid=( select dattablespace
from pg_database
where datname=‘musicdb’ );
image.png

7.重新命名数据库(改名成musicdb1)

ALTER DATABASE musicdb RENAME TO musicdb1;
\l查看修改
image.png

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

用以下语句修改musicdb1的默认用户,指定为user2
CREATE USER user2 IDENTIFIED BY ‘user1@ustb2020’;
ALTER USER user2 SYSADMIN;
ALTER DATABASE musicdb1 OWNER to user2;
image.png

\l查看修改
image.png

9.删除数据库

drop+database+数据库名,通过\l检验结果
image.png

四、个人小结

  • 本次学习内容是对数据库管理的逻辑结构的认识,尤其注意缺省情况下,新数据库将通过复制标准系统数据库template0来创建,且仅支持使用template0来创建。本次作业内容多,但并不困难,都是基础的数据库语句,以及一些系统表知识,都是需要我们熟练掌握的内容,课程引导很好,能顺利完成今天打卡,如果大家熟悉相关操作和数据库语句就能很快上手并完成任务,希望大家都继续坚持打卡,互勉加油!
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论