Tolong pilih kategori sesuai, jenis posting (diskusi atau bukan) dan sertakan tag/topik yang sesuai seperti komputer, java, php, mysql, dll. Promosi atau posting tidak pada tempatnya akan kami hapus!
- Bagi Anda yang ingin mendaftar, baca link berikut:
http://diskusiweb.com/discussion/50491/how-to-registrasi-diskusiweb-com-baca-ini-terlebih-dahulu
- Cara menyisipkan kode program supaya tampil rapi dan terformat dengan baik di diskusiweb.com: http://www.diskusiweb.com/discussion/50415/cara-menyisipkan-kode-program-di-diskusiweb-com
- Cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

instal dblink

aku baca di sini :

http://stackoverflow.com/questions/3862648/how-to-use-install-dblink-in-postgresql
http://stackoverflow.com/questions/5075193/installing-dblink-for-postgres-9

tapi aku masih bingung, instal dblink

aku butuh instal dblink untuk join table dari 2 database yg berbeda di posgresql

seperti ini :

http://stackoverflow.com/questions/4678862/joining-results-from-two-separate-databases

klo gak instal dblink, gak bakal bisa baca dblink
ada error, dblink tidak ada


mohon pencerahannya :D
Tagged:

Comments

  • edited July 2015
    solved :D

    ternyata cman jalanin query ini aja di pgadmin

    CREATE EXTENSION dblink
  • edited July 2015
    kira2 ada solusi lain gak y selain dblink buat cross db? :D

    soalnya klo pke dblink harus menyertakan dbname, username, password, tipe data dari semua field untuk setiap kali join. klo 3x join, menyertakan dbname, username dsb sebanyak 3x
    query nya jadi panjang banget


    mohon pencerahannya :D
  • 2 db yg berbeda di posrgre itu ...
    - masih 1 postgre ?
    - atau beneran ada 2 postgre juga ?
  • 1 postgre
  • napa kagak 1 user diberi hak akses ke 2 db yg elo punya ?

    elo pan bisa bikin query :

    SELECT ...
    FROM db1.nama_table ...
    JOIN db2.nama_table ...
  • napa kagak 1 user diberi hak akses ke 2 db yg elo punya ?
    caranya gimana? :D

    perlu setting dimana?
  • edited July 2015
    kalo perintah console nya pake GRANT
    http://www.postgresql.org/docs/9.4/static/sql-grant.html

    http://www.cyberciti.biz/faq/howto-add-postgresql-user-account/
    GRANT ALL PRIVILEGES ON DATABASE dbname TO username;

    itu kalo si username mau elo ijinkan buat memanipulasi semuanya di db dbname
    tapi kalo cuma tertentu saja, sebut hak nya apa

    tapi kalo pake GUI pgadmin ... elo cari sendiri di manual nya
  • pgadmin ada grant, cuma per table
    artinya, grant ke db sudah harus di definisikan lebih dulu

    http://www.pgadmin.org/docs/1.20/grantwiz.html
  • gimana cara nyetingnya master? :D
  • pan sudah dibilang : pake GRANT
  • edited July 2015
    masih bingung, tapi aku coba ini :

    REVOKE CONNECT ON DATABASE db_ronaldo FROM PUBLIC;
    GRANT CONNECT
    ON DATABASE db_ronaldo
    TO postgres;

    dan

    grant all privileges on database db_ronaldo to postgres;


    seperti itu?
  • user postgres pan root, superuser

    kagak perlu elo grant pasti bisa akses semua db
  • masih bingung :D

    lalu yg di grant di bagian mana?


    ini disetting dengan cara jalain query atau disetting lewat menu2 yg ada di tab menu? :-?
  • edited July 2015
    elo paham leveling user atau kagak to ?

    GRANT cuma dibutuhkan kalo elo pake user selain superuser

    kalo elo bikin aplikasi, sangat tidak disarankan pake koneksi dgn akun superuser
    sekali aplikasi elo bobol, yg di dapat langsung akun superuser nya db
    bisa abis db diobrak-abrik

    yg baik itu, 1 aplikasi disiapkan 1 user db baru dgn akses terbatas dan hak terbatas
    GRANT baru dipake disini kalo elo mau bikin user tsb bisa akses db yg mana saja

    kalo elo sudah pake akun superuser buat koneksi
    lha wong hak nya sudah superuser, mau akses db mana saja pasti bisa
    kagak perlu elo GRANT
  • edited July 2015
    klo superuser bisa akses db mana aja, kenapa jalanin query seperti ini gak jalan?

    SELECT ...
    FROM db1.nama_table ...
    JOIN db2.nama_table ...

    misal, aku punya 2 db, db_mu & db_arsenal

    db_mu punya tabel, tb_roonay
    db_arsenal punya tabel, tb_cech

    lalu aku jalanin query ini di db_arsenal

    SELECT * FROM db_mu.tb_roonay

    pasti gak jalan

    gimana caranya saat aku jalanin query tsb di db_arsenal, bisa jalan

    aku udah nemu solusinya, cman pke dblink
  • lha mana referensi nama db nya ?

    yg gw bold itu pan rujukan nama db
  • edited July 2015
    aku udah update di atas

    yg ini :

    SELECT * FROM db_mu.tb_roonay

    di jalankan di db_arsenal :

    ERROR: relation "db_mu.tb_roonay " does not exist
  • lupa, postgre itu 3 lapis struktur db nya
    db.schema.table

    db nya yg beda ?
    atau cuma schema nya yg beda ?
  • db nya yg beda
  • edited July 2015
    ya elo sebut lengkap db berikut schema nya
  • edited July 2015
    db_mu -> Schemas -> tb_roonay
    db_arsenal -> Schemas -> tb_cech

    yg lebih lengkap :

    Servers -> PostgreSQL 9.4 (localhost:5432) -> databases -> db_mu -> Schemas -> public -> Tables -> tb_roonay

    Servers -> PostgreSQL 9.4 (localhost:5432) -> databases -> db_arsenal -> Schemas -> public -> Tables -> tb_cech
  • schema nya kagak ada namanya ?

    http://www.postgresql.org/docs/9.4/static/ddl-schemas.html
    kalo merujuk ke dokumentasi ... ada
  • edited July 2015
    aku lihat di db gui nya gak ada, cman Schemas

    Servers -> PostgreSQL 9.4 (localhost:5432) -> databases ->
    db_mu -> Schemas -> public -> Tables -> tb_roonay
  • public itu nama schema nya
  • edited July 2015
    lalu query buat akses databases nya gimana?  :-?

    aku coba begini :

    SELECT * FROM db_mu.public.tb_roonay

    ada error :

    ERROR: cross-database references are not implemented: "db_mu.public.tb_roonay "
  • ya sebut lengkap db.schema.table
  • aku udah update di atas
  • berarti bener yg kemarin ...

    postgre masih bisa pake rujukan something.table

    cuma gw yg lupa kalo struktur db nya postgre ada 3 lapis
    something nya bukan db, tapi schema

    table di 1 db, beda schema, masih bisa pake query
    SELECT ...
    FROM schema1.table ...
    JOIN schema2.table ...

    tapi emang kagak bisa pake db.schema.table

    hak akses user atas schema juga bisa dibagi-bagi
    1 user bisa diatur bisa akses ke 1 atau lebih schema



    ada ekstension selain dblink, tapi cuma buat postgre 9.3+
    kayanya kagak seribet dblink
    karena remote db di alias kan jadi local db
    elo baca aja dokumentasinya



    btw,
    napa to sampai db nya yg dibedakan ?
    napa bukan cukup schema nya saja ?
  • edited July 2015
    http://www.postgresql.org/docs/9.3/static/postgres-fdw.html

    dokumentasinya yg itu?


    soalnya aplikasi yg dibuat lebih dari 1 dan saling berhubungan
    misal : aplikasi A dan aplikasi B
    saat login di aplikasi A, bisa akses aplikasi B
    makanya ada 2 db
  • edited July 2015
    yang dokumentasi, ya yg itu



    mau dibedakan berdasar db atau schema buat lebih dari 1 aplikasi itu sebenernya tergantung konsep awal pengembangan aplikasi

    toh kalopun dibedakan berdasar schema ...
    1 schema ditujukan utk app A
    1 schema ditujukan utk app B

    user A dipake buat koneksi ke schema A, dan kagak bisa akses ke schema B
    dan sebaliknya

    gitu juga bisa

    kagak melulu harus db yg dipisah
  • =D>

    aku coba dulu dokumentasinya
Sign In or Register to comment.