psql执行一个sql文件中所有命令

最近更新时间: 2024-06-12 15:06:00

  • 在外部执行。

     [tbase@VM_0_29_centos ~]$ cat /data/tbase/tbase.sql 
     set search_path = public;
     insert into tbase values(1,2);
     select count(1) from tbase;
    
     [tbase@VM_0_29_centos ~]$ psql -h 172.16.0.29 -p 15432 -U tbase -d postgres -f /data/tbase/tbase.sql 
     SET
     INSERT 0 1
      count 
     -------
      10001
     (1 row)
    
  • 在内部执行。

     [tbase@VM_0_29_centos ~]$ psql -h 172.16.0.29 -p 15432 -U tbase -d postgres 
     psql (PostgreSQL 10 (TBase 2.01))
     Type "help" for help.
    
     postgres=# \i  /data/tbase/tbase.sql 
     SET
     INSERT 0 1
      count 
     -------
      10002
     (1 row)