PostgreSQL数据库命令行执行SQL脚本的三种方式

这篇具有很好参考价值的文章主要介绍了PostgreSQL数据库命令行执行SQL脚本的三种方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

生成环境中,出于安全性等原因,往往不提供数据库连接工具,所以对数据库的更新和升级就得通过命令行来实现。本文总结了三种命令行执行sql脚本的方式。

一、psql命令执行

命令格式:
psql [option…] [dbname] [username]
常用参数介绍:
-h:指定IP地址或主机名。
-p:指定端口,默认为5432。
-U:指定数据库的用户名。
-d:指定数据库名称。
-f:指定文件。从文件读取命令。

# 示例(ct.sql为sql脚本文件)
psql -d postgres -f /pgsql/postgresql/ct.sql

使用以上命令确保ct.sql文件放置在postgres账号有权限的目录,否则会报“Permission denied”错误。
psql执行sql文件,数据库,PostgreSQL,数据库,postgresql,sql
如果你的sql脚本很短,那么也可以使用下面的方式。

# 将sql语句放置在单引号中
psql -d postgres -c 'select version();'

psql执行sql文件,数据库,PostgreSQL,数据库,postgresql,sql

二、\i命令执行

# 示例
\i /pgsql/postgresql/ct.sql

使用以上命令需要先psql进入数据库,并且确保ct.sql文件放置在postgres账号有权限的目录,否则会报“Permission denied”错误。
psql执行sql文件,数据库,PostgreSQL,数据库,postgresql,sql

三、\e命令执行

\e

使用\e命令按回车后会出现vi编辑器,将sql脚本复制到编辑其中,保存退出后就会自动执行脚本。
输入\e按回车后
psql执行sql文件,数据库,PostgreSQL,数据库,postgresql,sql
保存退出后自动执行sql脚本,如下图。
psql执行sql文件,数据库,PostgreSQL,数据库,postgresql,sql

总结

以上总结的三种方式都比较常用,可以根据自己的应用场景灵活使用。文章来源地址https://www.toymoban.com/news/detail-679891.html

到了这里,关于PostgreSQL数据库命令行执行SQL脚本的三种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • PostgreSQL-数据库命令

    一个数据库是一个或多个模式的集合,而模式包含表、函数等。因此,完整的逻辑组织结构层次是服务器实例(PostgreSQL Server)、数据库(Database)、模式(Schema)、表(Table),以及某些其他对象(如函数)。一个PostgreSQL服务器实例可以管理多个数据库。当应用程序连接到一

    2024年02月14日
    浏览(52)
  • postgresql|数据库|SQL语句冲突的解决

    postgresql数据库是比较复杂的一个关系型数据库,而有些时候,即使是简单的插入更新操作也是有很多复杂的机制。 那么,什么是冲突?什么时候会遇到冲突(也就是冲突的常见场景)?如果有冲突我们应该怎么去解决?这些问题我想应该是在此文章中详细说明的。 复杂点的

    2024年02月06日
    浏览(68)
  • 四种数据库执行脚本文件导入数据的方式

    mysql执行sql脚本文件的方法: 1、在命令行输入mysql -uroot -h10.235.5.55 -p’123456’ -P3306 F:helloniuzi.sql 2、在命令行输入【source F:helloniuzi.sql】 mysql -uroot -h10.235.5.55 -p’123456’ -P3306 -e \\\"source test.sql \\\" test.log psql -Upostgres -dzxin -h10.235.5.55 -p6789 -f test.sql upgrade.log isql -Uzxin_smap -P’123456’

    2024年02月04日
    浏览(49)
  • [运维|数据库] PostgreSQL数据库对MySQL的 READS SQL DATA 修饰符处理

    在 PostgreSQL 中,访问权限通常是通过数据库角色和表级别的权限进行管理,而不需要类似 MySQL 中的 READS SQL DATA 修饰符。 要在 PostgreSQL 中管理数据库对象的访问权限,您可以使用以下 SQL 命令: GRANT :授予用户或角色对表、视图等对象的特定权限。 REVOKE :撤销用户或角色对

    2024年02月07日
    浏览(74)
  • 【PHP语言-PDO接口】PDO接口执行脚本操作数据库

    目录 前言: 一、 PDO简介 二、 PDO对象方法 三、实战中心 PDO:数据库抽象层 简介:PDO扩展为PHP访问数据库定义了一个轻量级的、一致性的接口,PDO解决了数据库连接不统一的问题。 1、PDO简介 (1)PHP的PDO(PHP Data Objects)是一种用于在PHP中访问数据库的扩展。它提供了一个统

    2024年02月13日
    浏览(47)
  • sql在数据库执行正常在mybatis中执行很慢

    最近项目组压力测试发现一个BUG,某个分页查询sql在数据量变大之后,在数据库执行正常,在mybatis执行很慢。 代码如下(示例): 这样替换之后,确实变快了,但是${}的写法不能防sql注入。 代码如下(示例): 以上就是本次BUG的解决过程,原因猜测可能是数据量增长后,

    2024年02月13日
    浏览(38)
  • 数据库中的SQL是如何执行的?

    参考文献:03丨学会用数据库的方式思考SQL是如何执行的 以oracle和MySQL为例,讲解了sql是怎么被执行的,并且对比了执行过程中,oracle和MySQL的异同。 个人感觉,讲解的核心是SQL执行时的缓存机制。 自我口述一下 sql语句在提交后, 首先进行“语法检查”,检查sql语法是否正

    2024年02月09日
    浏览(49)
  • 数据库--SQL关键字的执行顺序

    数据库-- 数据类型 : http://t.csdn.cn/RtqMD 数据库-- 三大范式、多表查询、函数sql: http://t.csdn.cn/udJSG 数据库-- MySQL增删改查: http://t.csdn.cn/xkiti select   from   join   where   group by   having   order by   聚合函数   limit   top  以及逻辑运算符not  and    or    一: 语法顺序    

    2024年02月12日
    浏览(51)
  • 实例讲解C++连接各种数据库,包含SQL Server、MySQL、Oracle、ACCESS、SQLite 和 PostgreSQL、MongoDB 数据库

      C++ 是一种通用的编程语言,可以使用不同的库和驱动程序来连接各种数据库。以下是一些示例代码,演示如何使用 C++ 连接 SQL Server、MySQL、Oracle、ACCESS、SQLite 和 PostgreSQL、MongoDB 数据库。 连接 SQL Server 数据库 要使用 C++ 连接 SQL Server 数据库,可以使用 Microsoft 的 ADODB 库。以

    2024年02月05日
    浏览(66)
  • 数据库安全:Hadoop 未授权访问-命令执行漏洞.

    Hadoop 未授权访问主要是因为 Hadoop YARN 资源管理系统配置不当,导致可以未经授权进行访问,从而被攻击者恶意利用。攻击者无需认证即可通过 RESTAPI 部署任务来执行任意指令,最终完全控制服务器。 数据库安全:Hadoop 未授权访问-命令执行漏洞. Hadoop 未授权访问-命令执行漏

    2024年02月05日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包