我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Postgresql数据库命令行、数据库、表空间操作

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Postgresql数据库命令行、数据库、表空间操作

Postgresql数据库命令行、数据库、表空间操作

一、查看数据库和表

列出数据库:

您可以使用以下任何一个命令列出PostgreSQL中的所有数据库。

postgres=# list
postgres=# l

列出数据库中所有表:

要列出任何数据库的表先连接到数据库,然后查看该数据库中的表。 (例如:mydb)要看到表和第二个命令将列出表首先命令将您连接数据库。

postgres=# connect mydb

mydb=# dt

二、创建数据库:

列出数据库名称

SELECT datname FROM pg_database;

在PostgreSQL服务器上执行下面的SQL语句可以创建数据库。

CREATE DATABASE db_name;

在数据库成功创建之后,当前登录角色将自动成为此新数据库的所有者。在删除该数据库时,也需要该用户的特权。如果你想让当前创建的数据库的所有者为其它角色,可以执行下面的SQL语句。

CREATE DATABASE db_name OWNER role_name;

三、修改数据库配置:

PostgreSQL服务器提供了大量的运行时配置变量,我们可以根据自己的实际情况为某一数据库的某一配置变量指定特殊值,通过执行下面的SQL命令可以使该数据库的某一配置被设置为指定值,而不再使用缺省值。

ALTER DATABASE db_name SET varname TO new_value;

这样在之后基于该数据库的会话中,被修改的配置值已经生效。如果要撤消这样的设置并恢复为原有的缺省值,可以执行下面的SQL命令。

ALTER DATABASE dbname RESET varname;

四、删除数据库:

只有数据库的所有者和超级用户可以删除数据库。删除数据库将会删除数据库中包括的所有对象,该操作是不可恢复的。见如下删除SQL命令:

DROP DATABASE db_name;

五、表空间:

在PostgreSQL中,表空间表示一组文件存放的目录位置。在创建之后,就可以在该表空间上创建数据库对象。通过使用表空间,管理员可以控制一个PostgreSQL服务器的磁盘布局。这样管理员就可以根据数据库对象的数据量和数据使用频度等参照来规划这些对象的存储位置,以便减少IO等待,从而优化系统的整体运行性能。比如,将一个使用频繁的索引放在非常可靠、高效的磁盘设备上,如固态硬盘。而将很少使用的数据库对象存放在相对较慢的磁盘系统上。下面的SQL命令用于创建表空间。

CREATE TABLESPACE fastspace LOCATION "/mnt/sda1/postgresql/data";

需要说明的是,表空间指定的位置必须是一个现有的空目录,且属于PostgreSQL系统用户,如postgres。在成功创建之后,所有在该表空间上创建的对象都将被存放在这个目录下的文件里。

在PostgreSQL中只有超级用户可以创建表空间,但是在成功创建之后,就可以允许普通数据库用户在其上创建数据库对象了。要完成此操作,必须在表空间上给这些用户授予CREATE权限。表、索引和整个数据库都可以放在特定的表空间里。见如下SQL命令:

CREATE TABLE foo(i int) TABLESPACE space1;

此外,我们还可以通过修改default_tablespace配置变量,以使指定的表空间成为缺省表空间,这样在创建任何数据库对象时,如果没有显示指定表空间,那么该对象将被创建在缺省表空间中,如:

SET default_tablespace = space1;

CREATE TABLE foo(i int);

与数据库相关联的表空间用于存储该数据库的系统表,以及任何使用该数据库的服务器进程创建的临时文件。

要删除一个空的表空间,可以直接使用DROP TABLESPACE命令,然而要删除一个包含数据库对象的表空间,则需要先将该表空间上的所有对象全部删除后,才可以再在删除该表空间。

要检索当前系统中有哪些表空间,可以执行以下查询,其中pg_tablespace为PostgreSQL中的系统表。

SELECT spcname FROM pg_tablespace;

我们还可以通过psql程序的db元命令列出现有的表空间。

 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Postgresql数据库命令行、数据库、表空间操作

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Postgresql数据库命令行、数据库、表空间操作

一、查看数据库和表 列出数据库: 您可以使用以下任何一个命令列出PostgreSQL中的所有数据库。 postgres=# listpostgres=# l 列出数据库中所有表: 要列出任何数据库的表先连接到数据库,然后查看该数据库中的表。 (例如:mydb)
Postgresql数据库命令行、数据库、表空间操作
2020-07-31

Mysql数据库操作(命令行)

1 环境  树莓派:  mysql: 2  指令 以下是从命令行中连接mysql服务器的简单实例: [root@host]# mysql -u root -pEnter password:****** 或者:pi@raspberrypi:~ $ sudo my
Mysql数据库操作(命令行)
2018-02-06

数据库操作命令

DB commands常用数据库操作命令目录MySQLPostgreSQLMySQL基础命令配置命令备份与还原基础命令KeyCommand清屏system clear Ctrl + l (滚屏[1])登录mysql -u root -p切换数据库USE d
数据库操作命令
2016-01-15

使用psql操作PostgreSQL数据库命令详解

目录PostgreSQL的操作和mysql差别较大连接到 PostgreSQL 数据库列出数据库中所有表查看特定表的信息查询表中的数据退出 psql 命令行工具postgresql的操作和mysql差别较大可以使用 psql 命令行工具或
2023-08-29

PostgreSQL 数据库操作函数

查看当前数据库的连接状态SELECT * FROM pg_stat_activity WHERE datname ="mydb";
PostgreSQL 数据库操作函数
2017-12-24

Postgresql 数据命令行导入导出操作

导入COPY cnt_topholder_balance(datetime,chain,crypto,address,balance) FROM "/tmp/cnt_topholder_balance_2019_10_31_fix.csv" DELIMITER
2019-05-14

Mysql 命令行模式访问操作mysql数据库操作

使用环境 在cmd模式下输入 mysql --version (查看mysql安装的版本). 完整的命令可以通过mysql --help来获取. 本测试使用的Mysql版本是mysql5, 本测试使用的SQL: db_yves.sql: 链
2022-05-27

MySQL 操作数据库、数据表

通过mysql-client连接到mysql-server,sql语句要以分号结尾,这样按Enter才会执行sql语句。mysql关键字不区分大小写字符串、时间日期类型的值要引起来  数据库操作show databases; #显示已有的数据库create
MySQL  操作数据库、数据表
2016-11-30

MySQL数据库(四)数据库和表操作

4.1 连接在最初安装MySQL,可能会要求你输入一个管理登录(通常为root)和一个口令(密码)。连接MySQL需要以下信息:主机名(计算机名)——如果连接到本地MySQL服务器,为localhost;端口(如果使用默认端口3306之外的端口);一个合法的用
MySQL数据库(四)数据库和表操作
2018-05-11

编程热搜

目录