PostgreSQL:psql 介绍

天翼云开发者社区
• 阅读 363

本文分享自天翼云开发者社区《PostgreSQL:psql 介绍》,作者: 周****平

psql 命令是与 PostgreSQL 服务器交互的客户端程序,要登录到数据库服务器,需要使用psql 客户端工具或者第三方客户端工具如PostgreSQL for Navicat,pgAdmin,Visualizer 等等。psql 作为 DBA 通常使用的与 PostgreSQL 交互的客户端终端程序,因此,熟悉这个命令的用法可以帮助 DBA 快速的操作和维护数据库。

语法 psql 的默认语法 psql [OPTION]...[数据库名称 [用户名]]

说明 在 shell 命令行输入 psql,会直接进入数据库,此时的数据库默认用户名是 postgres,默认的数据库是 postgres。 连接选项: -c, --command=COMMAND:执行单行命令。 -d, --dbname=DBNAME:数据库名称(默认:“postgres”) -f, --file=FILENAME:从外部调用脚本文件 -l, --list:列出可用的数据库后退出。 -v, --set=, --variable=NAME=VALUE:set psql 变量 NAME to VALUE(例如,-v > -V, --版本输出版本信息,然后退出 -X, --no-psqlrc 不读取启动文件 (~/.psqlrc) -1 (“one”), --single-transaction:作为单个事务执行(如果是非交互式的) 输入输出选项: -a, --echo-all:将脚本中的所有输入都输出,包含 SQL 命令,存储过程和默认的 psqlrc 文件中的命令。 -b, --回声错误回显失败命令 -e, --echo-queries echo 命令发送到服务器 -E, --echo-hidden:可以获取元命令的SQL代码 -L, --log-file=FILENAME:发送会话日志到指定的文件。 -n, --无读线禁用增强的命令行编辑(读线) -o, --output=FILENAME:和-L不同的是,该参数仅仅将当前登录用户的执行操作结果保存到指定的文件,并且不会显示输出到屏幕。 -q, --quiet:以静默方式运行,没有额外信息显示,只输出查询结果,一般结合 Aqt 一起使用。 -s, --单步单步模式(确认每个查询) -S, --single-line:: 单行模式,SQL 语句只能写在一行,而不能换行,不加该参数,SQL 语句可换行。 输出格式选项 -A, --no-align:不对齐输出。 --csv:以逗号分隔的表输出模式。 -F, --field-separator=STRING:域分隔符(默认:|)。 -H, --html:以HTML表格输出查询结果。 -P, --pset=VAR[=ARG] 将打印选项 VAR 设置为 ARG(请参见 \pset 命令) -R, --record-separator=STRING record separator for unigned output(默认值:换行符) -t, --tuples-only:仅输出结果行。 -T, --table-attr=TEXT 设置 HTML 表标签属性(例如,宽度、边框) -x, --扩展打开扩展表输出 -z, --字段分隔符-零设置字段分隔符,用于将未对齐的输出设置为零字节 -0, --记录分隔符 --零设置记录分隔符,用于将未对齐的输出转换为零字节 链接选项 -h, --host=HOSTNAME:远程数据库服务器主机 ip 或 Unix 套接字目录(默认:“local socket”) -p, --port=PORT:数据库运行监听端口(默认: “5432”) -U, --username=USERNAME:数据库用户名(默认: “postgres”) -w, --no-password:禁用密码提示 -W, --密码强制密码提示(应该自动发生) 示例 登录数据库

元命令 在psql 中输入的以反斜杠开头的内容都是psql元命令,也叫做反斜杠命令。元命令由psql自身进行处理。 元命令格式为反斜杠后跟参数,如\copy 命令即为元命令,语法格式为

元命令和选项之间可以有一个或者多个空格隔开,如果可选参数中包含了空格,可以用单引号将其引起来,如果是转义字符如: \ n(换行),\ t(制表符),\ b(退格键),\ r(回车),\ f(换页),\ digits(八进制)和\ xdigits(十六进制)都可以使用单引号引起来。 部分元命令以SQL标识符(如表名,函数,序列等)作为参数,这些参数需遵循SQL语法规则:不带引号的字母将被强制小写,双引号之间的字母不进行大小写转换,并允许在标识符中包含空格。在双引号中,成对的双引号会当成单引号使用。 psql 提供了丰富的元命令,如查看数据库对象定义,数据库对象空间大小,导入导出等元命令,以便于DBA或者开发人员能够方便的管理和维护数据库。 通用 \版权显示 PostgreSQL 使用和分发条款 \交叉表视图 [列] 执行查询并在交叉表中显示结果 \errverbose 以最大详细程度显示最新的错误消息 \g [文件] 或 ;执行查询(并将结果发送到文件或|管道) \gdesc 描述查询的结果,而不执行它 \gexec 执行查询,然后执行其结果中的每个值 \gset [PREFIX] 执行查询并将结果存储在 psql 变量中 \gx [FILE] 作为 \g,但强制扩展输出模式 \q quit psql \watch [SEC] 每隔 SEC 秒执行一次查询 查询缓冲区 \ef [FUNCNAME [LINE]] 使用外部编辑器编辑函数定义 \ev [视图名称 [行]] 使用外部编辑器编辑视图定义 \p 显示查询缓冲区的内容 \r 重置(清除)查询缓冲区 \s [文件] 显示历史记录或将其保存到文件 \w 文件将查询缓冲区写入文件 输入/输出 \复制...使用数据流执行 SQL COPY 到客户端主机 \echo [字符串] 将字符串写入标准输出 \i 文件从文件执行命令 \ir FILE 作为 \i,但相对于当前脚本的位置 \o [文件] 将所有查询结果发送到文件或|管道 \qecho [STRING] 将字符串写入查询输出流(请参见 \o) 有條件的 \如果 EXPR 开始条件块 \elif EXPR 替代当前条件块中 \else 当前条件块中的最终替代项 \endif end conditional block

信息查看 \d[S+]:列出表、视图、序列、或索引 \d[S+] NAME 描述表、视图、序列或索引 \da[S] [模式] 列表聚合 \dA[+] [模式] 列表访问方法 \db[+] [PATTERN]:列出表空间信息 \dc[S+] [模式] 列表转换 \dC[+] [模式] 列表转换 \dd[S] [模式] 显示未在其他地方显示的对象描述 \dD[S+] [模式] 列表域 \ddp [模式] 列出默认权限 \dE[S+] [模式] 列出外来表 \det[+] [PATTERN] 列出外来表 \des[+] [PATTERN] 列出外部服务器 \deu[+] [PATTERN] 列表用户映射 \dew[+] [PATTERN] 列出外来数据包装器 \df[anptw][S+] [PATRN] 列表 [仅 agg/normal/procedures/trigger/window] 函数 \dF[+] [模式] 列出文本搜索配置 \dFd[+] [模式] 列表文本搜索词典 \dFp[+] [PATTERN] 列表文本搜索解析器 \dFt[+] [模式] 列表文本搜索模板 \dg[S+] [模式] 列表角色 \di[S+] [PATTERN]:查看索引占用空间大小 \dl 列出与 \lo_list 相同的大型对象 \dL[S+] [模式] 列出过程语言 \dm[S+] [模式] 列出实例化视图 \dn[S+] [模式] 列表架构 \do[S] [模式] 列表运算符 \dO[S+] [模式] 列表排序规则 \dp [PATTERN] 列出表、视图和序列访问权限 \dP[itn+] [PATTERN] 列表 [仅索引/表] 分区关系 [n=嵌套] \drds [PATRN1 [PATRN2]] 列出每个数据库的角色设置 \dRp[+] [PATTERN] 列出复制发布 \dRs[+] [模式] 列出复制订阅 \ds[S+] [模式] 列表序列 \dt[S+] [PATTERN]:查看表占用空间大小 \dT[S+] [模式] 列出数据类型 \du[S+] [模式] 列表角色 \dv[S+] [模式] 列表视图 \dx[+] [模式] 列表扩展 \dy [模式] 列表事件触发器 \l[+] [模式] 列表数据库 \sf[+] FUNCNAME:查看函数定义信息 \sv[+] VIEWNAME:列出视图的定义信息 \z [模式] 与 \dp 相同 格式 \在未对齐和对齐输出模式之间切换 \C [字符串] 设置表标题,如果没有,则取消设置 \f [字符串] 显示或设置未对齐查询输出的字段分隔符 \H 切换 HTML 输出模式(当前关闭) \pset [NAME [VALUE]] 设置表输出选项 (边框|列|csv_fieldsep|展开|字段| fieldsep_zero|页脚|格式|线样式|空| 数字定位|页|pager_min_lines|记录| recordsep_zero|tableattr|title|tuples_only| unicode_border_linestyle|unicode_column_linestyle| unicode_header_linestyle) \t [开|关] 仅显示行(当前关闭) \T [字符串] 设置 HTML

标记属性,如果没有,则取消设置 \x [on|off|auto]:可设置查询结果输出模式 (默认:off) 链接 \c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}:连接到本地或远程数据库服务器 \conninfo 显示有关当前连接的信息 \编码 [编码] 显示或设置客户端编码 \password [用户名] 安全地更改用户的密码 系统操作 \cd [目录] 更改当前工作目录 \setenv NAME [VALUE] 设置或取消设置环境变量 \timing [on|off] 切换命令的计时(当前关闭) ![命令] 在 shell 中执行命令或启动交互式 shell 参数 \prompt [TEXT] NAME 提示用户设置内部变量 \未设置名称 未设置(删除)内部变量

大对象 \lo_export 小叶文件 \lo_import 文件 [注释] \lo_list \lo_unlink LOBOID 大型对象操作

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31490526/viewspace-2711967/,如需转载,请注明出处,否则将追究法律责任。

点赞
收藏
评论区
推荐文章
Springfox与SpringDoc——swagger如何选择(SpringDoc入门)
本文分享自天翼云开发者社区@《》,作者:才开始学技术的小白0.引言之前写过一篇关于swagger(实际上是springfox)的使用指南(https://www.ctyun.cn/developer/article/371704742199365),涵盖了
Stella981 Stella981
3年前
PostgreSQL“ DESCRIBE TABLE”
问题:如何在PostgreSQL中执行等效于OracleDESCRIBETABLE的命令(使用psql命令)?解决方案:参考一:https://stackoom.com/question/SRJ/PostgreSQLDESCRIBETABLE(https://www.oschina.net/acti
PostgreSQL:内存结构
本文分享自天翼云开发者社区@《》,作者:我是小朋友在Postgresql中,内存大概被分为两块Localmemoryarea:为每一个backendprocess分配的内存Sharedmemoryarea:PostgreSQLserver所有的backgr
PostgreSQL:进程结构
本文分享自天翼云开发者社区@《》,作者:周平Postgresql是一个C/S架构的关系型数据库,由多个后台进程管理数据库,下面分别介绍一些这些进程postgresserverprocess一个服务器端进程,是所有进程的父进程。该进程管理数据库文件,接受客户
使用element-ui 的上传组件upload完成自定义上传到天翼云oss云服务器
本文分享自天翼云开发者社区@《》,作者:我是小朋友首先配置天翼云,如下操作1、要求在使用OOS之前,首先需要在www.ctyun.cn注册一个账号(Account)。创建AccessKeyId和AccessSecretKey。AccessKeyId和Acc
PostgreSQL:启动与停止
本文分享自天翼云开发者社区@《》,作者:周平启动和停止PostgreSQL数据库服务器,通常使用pgctl。通常在我们的生产环境中,如果数据库主机发生意外停机或者由于计划内的硬件配置等操作停止了主机后,PostgreSQL服务也将会停止,需要手动重启。因此
无服务器Serverless总结
本文分享自天翼云开发者社区@《》,作者:我是小朋友背景随着AWSLambda的诞生,无服务器与FaaS一起出现在舞台中,Serverless也开始进入人们的视野。全球各大云服务厂商都纷纷推出各自的Serverless平台。先了解下什么是云计算云计算是通过I
虚拟主机和云服务器的区别
本文分享自天翼云开发者社区@《》,作者:AE86上山了虚拟主机和云服务器的区别1、云服务器可支持弹性扩展,按需付费,而虚拟主机不支持2、云服务器需要手动配置环境,虚拟主机无须配置环境3、云服务器是独享资源,虚拟主机的资源是共享的4、云服务器可远程桌面进行管
大数据通用组件故障处理
本文分享自天翼云开发者社区《》,作者:fnHDFS1.HDFS服务一直异常检查HDFS是否处于安全模式。检查ZooKeeper服务是否运行正常。2.HDFS维护客户端出现OutOfMemoryError异常使用HDFS客户端之前,需要在HADOOPCLIE
简单概述Serverless
本文分享自天翼云开发者社区@《​​》,作者:我是小朋友Serverless是计算的趋势,它使诸如Web应用程序之类的代码执行与维护服务器以运行该代码的需求脱钩。创建,供应和维护服务器上运行的应用程序的操作开销(传统意义上)非常重要。减少或消除这项工作可以帮
天翼云开发者社区
天翼云开发者社区
Lv1
天翼云是中国电信倾力打造的云服务品牌,致力于成为领先的云计算服务提供商。提供云主机、CDN、云电脑、大数据及AI等全线产品和场景化解决方案。
文章
722
粉丝
15
获赞
40