How do I import modules or install extensions in P

2019-01-21 00:24发布

问题:

I'm trying to import several modules that come bundled with 8.4.1 postgres, and all the commands to do so (such as contrib.import etc) do not work or cannot be found. Please help me.

回答1:

To install PostgreSQL contrib modules on Ubuntu or Kubuntu (or similar Linux distributions):

  1. Install the contrib package: sudo apt-get install postgresql-contrib
  2. Restart the database: sudo /etc/init.d/postgresql-8.4 restart
  3. Change to the database owner account (e.g., postgres).
  4. Change to the contrib modules' directory: /usr/share/postgresql/8.4/contrib/
  5. Use ls to see a list of the following modules:

    adminpack               autoinc
    btree_gin               btree_gist
    chkpass                 citext
    cube                    dblink
    dict_int                dict_xsyn
    earthdistance           fuzzystrmatch
    hstore                  insert_username
    int_aggregate           isn
    lo                      ltree
    moddatetime             pageinspect
    pg_buffercache          pgcrypto
    pg_freespacemap         pgrowlocks
    pg_stat_statements      pgstattuple
    pg_trgm                 pgxml
    refint                  seg
    sslinfo                 tablefunc
    test_parser             timetravel
    tsearch2                uuid-ossp
    
  6. Load the SQL files using: psql -U user_name -d database_name -f module_name.sql

For example, if your administrative user was named postgres and your database was named storage and the module you wanted was cube, you would type:

psql -U postgres -d storage -f cube.sql

PostgreSQL 9.1:

After step #1 above, do:

  1. sudo /etc/init.d/postgresql restart
  2. (same as #3 above)
  3. cd /usr/share/postgresql/9.1/extension (has extensions)
  4. open psql
  5. CREATE EXTENSION "uuid-ossp";


回答2:

  1. login as postgres user
  2. use create extension to load it

I have a database named 'book' for example,

psql -U postgres book create extension cube

Repeat for each extension required, then \q to logouy