重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1609|回复: 21
打印 上一主题 下一主题

PG和ORACLE 对比

[复制链接]
跳转到指定楼层
楼主
发表于 2023-12-13 01:04:19 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
1.进程对比
   ORACLE: 监听进程(守护进程),服务进程,后台进程
   PG:       服务进程(POSTGREMASTER))充当监听的职能, 后端进程(和ORACLE的服务进程功能类似),后台进程
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

22#
 楼主| 发表于 2024-1-1 15:59:29 | 只看该作者
22.在同一字段上能否创建多个索引

    ORACLE:不能

    PG : 可以创建多个不同的索引,而且多个可以有用
            postgres@:5432/postgres-95655#=create index idx_test on test(id);
CREATE INDEX
postgres@:5432/postgres-95655#=create index idx_test1 on test(id);
CREATE INDEX
postgres@:5432/postgres-95655#=create index idx_test2 on test(id);
CREATE INDEX
postgres@:5432/postgres-95655#=\d test
                Table "public.test"
Column |  Type   | Collation | Nullable | Default
--------+---------+-----------+----------+---------
id     | integer |           |          |
v      | integer |           |          |
Indexes:
    "idx_test" btree (id)
    "idx_test1" btree (id)
    "idx_test2" btree (id)
回复 支持 反对

使用道具 举报

21#
 楼主| 发表于 2024-1-1 13:20:19 | 只看该作者
21.优化连接
    ORACLE: NESTED LOOP,HASH JOIN ,MERGE JOIN,CROSS JOIN

    PG: NESTED LOOP,HASH JOIN ,MERGE JOIN
          没有 CROSS JOIN
回复 支持 反对

使用道具 举报

20#
 楼主| 发表于 2023-12-31 10:07:37 | 只看该作者
20.修改参数

   ORACLE:修改PFILE,或者SPFILE
                  PFILE通过操作系统方式修改,重启生效
                  SPPFILE是二进制的,从9I开始提供,可以通过ALTER SYSTEM 方式修改,部分参数,可以立即生效。

  PG: 修改POSTGRESQL.CONF,或者POSTGRESQL.AUTO.CONF
          在 PG9.4以前,只能手工修改 postgresql.conf 文件,在9.4提供了ALTER SYSTEM SET 方式修改POSTGRESQL.AUTO.CONF 文件,能生效的参数,可以通过pg_ctl reload 方式生效,否则,需要重启PG才能生效。
回复 支持 反对

使用道具 举报

19#
 楼主| 发表于 2023-12-30 11:21:15 | 只看该作者
19.SQL 组合
   ORACLE: UNION,UNION ALL,INTERSECT,MINUS

   PG: UNION,UNION ALL,
         INTERSECT,INTERSECT ALL
         EXCEPT,EXCEPT ALL

        PG没有MINUS
         
回复 支持 反对

使用道具 举报

18#
 楼主| 发表于 2023-12-29 18:08:11 | 只看该作者
18.表不存在,是否可以创建过程

    ORACLE: 不能

    PG: 可以
回复 支持 反对

使用道具 举报

17#
 楼主| 发表于 2023-12-29 17:20:43 | 只看该作者
17.事务中是否可以含DDL
    ORACLE:事务中,不能含DDL命令

    PG: 使用中,可以含DDL命令。如下:
           postgres@:5432/postgres-2414#=begin;
BEGIN
postgres@:5432/postgres-2414#=create table xx(id numeric);
CREATE TABLE
postgres@:5432/postgres-2414#=insert into xx values(10);
INSERT 0 1
postgres@:5432/postgres-2414#=\d
                  List of relations
Schema |          Name           | Type  |  Owner   
--------+-------------------------+-------+----------
public | log_student             | table | postgres
public | pg_buffercache          | view  | postgres
public | pg_stat_statements      | view  | postgres
public | pg_stat_statements_info | view  | postgres
public | score                   | table | postgres
public | student                 | table | postgres
public | t                       | table | postgres
public | test                    | table | postgres
public | xx                      | table | postgres
(9 rows)

postgres@:5432/postgres-2414#=rollback;
ROLLBACK
postgres@:5432/postgres-2414#=\d
                  List of relations
Schema |          Name           | Type  |  Owner   
--------+-------------------------+-------+----------
public | log_student             | table | postgres
public | pg_buffercache          | view  | postgres
public | pg_stat_statements      | view  | postgres
public | pg_stat_statements_info | view  | postgres
public | score                   | table | postgres
public | student                 | table | postgres
public | t                       | table | postgres
public | test                    | table | postgres
(8 rows)
回复 支持 反对

使用道具 举报

16#
 楼主| 发表于 2023-12-29 16:23:21 | 只看该作者
16.重建索引
   ORACLE :alter index idx_xxx rebulid;

   PG: REINDEX INDEX idx_xxx;
         REINDEX TABLE my_table;  --重建该表上的所有索引
回复 支持 反对

使用道具 举报

15#
 楼主| 发表于 2023-12-29 11:03:56 | 只看该作者
15.行位置
    ORACLE: ROWID

    PG:CTID

回复 支持 反对

使用道具 举报

14#
 楼主| 发表于 2023-12-20 22:11:29 | 只看该作者
14.查看参数
    oracle: show parameter para_name   --模糊匹配,输入一部分
               select name,value from v$parameter where name like '%para_name%';   --模糊匹配,输入一部分

    pg:  select name,setting from pg_settings where name like '%para_name%';  模糊匹配,输入一部分
           show max_wal_size;   --参数要输全
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-5-13 15:14 , Processed in 0.100895 second(s), 19 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表