Logo kereta api

Postgres Terkelola berbicara PostgreSQL

Menghubungkan Kereta Api ke Excel, Google Sheets, AI, dan REST

Railway Postgres melalui proxy TCP publik. Dua variabel tampak seperti variabel yang tepat, tetapi hanya satu yang benar — kartu tersebut tahu yang mana.

Satu koneksi, setiap permukaan

Ke mana data perkeretaapian Anda dapat dikirim?

Query Streams membaca data Railway Postgres dari Microsoft Excel, Google Sheets, Power BI, asisten AI melalui MCP dan endpoint REST melalui satu koneksi baca saja. Railway memberikan setiap basis data dua alamat: satu alamat pribadi yang hanya dapat diakses di dalam Railway, dan satu proxy TCP publik untuk semua hal lainnya. Agen Jaringan berjalan di luar Railway, sehingga proxy publiklah yang berfungsi — dan karena variabel pribadi adalah yang pertama kali ditampilkan Railway kepada Anda, kartu tersebut menolaknya berdasarkan nama daripada membiarkannya gagal karena waktu habis (timeout).

Railway adalah PostgreSQL yang sedang dalam perjalanan. — pengemudi standar, jadi setiap panduan di bawah ini berlaku tanpa perubahan. Satu-satunya bagian khusus Kereta Api adalah rangkaian penghubung, yang dibahas di bawah ini. detail koneksi.

  1. Untuk tim, vendor, dan mitra Anda
  2. Kereta Api Menuju Keunggulan Microsoft Excel · Add-in Excel

    Ambil hasil data perkeretaapian secara langsung ke dalam lembar kerja dan perbarui sesuai kebutuhan — Excel desktop, Excel Online, Microsoft 365.

    Panduan PostgreSQL
  3. Kereta Api ke Google Sheets Tambahan lembar

    Jalankan kueri Kereta Api yang tersimpan dari bilah sisi dan seret baris ke lembar kerja. Kolaborator yang berbagi dapat memperbaruinya sendiri.

    Panduan PostgreSQL
  4. Tanyakan pada Nova tentang Kereta Api Nova AI · teks ke SQL

    Ajukan pertanyaan dalam bahasa Inggris yang mudah dipahami. Nova sudah mengetahui tabel Railway Anda, menulis dan menjalankan SQL, menjelaskan jawabannya, dan membuat grafiknya — tidak perlu menulis kueri, tidak perlu memberikan kredensial.

    Cara kerja Nova
  5. Kereta Api ke Penampil Data Berbagi hasil · tim, vendor, mitra · telepon, tablet, desktop

    Bagikan hasil Railway secara langsung dengan siapa pun — kolega, vendor, mitra — sebagai tabel yang dapat di-bookmark dan akan berjalan ulang saat dibuka, di ponsel, tablet, atau desktop. Mereka hanya melihat hasilnya, bukan kode SQL atau kredensialnya.

    Cara kerja Penampil Data
  6. Untuk aplikasi dan sistem
  7. API REST Kereta Api Titik akhir HTTP

    Publikasikan kueri Railway sebagai endpoint JSON terautentikasi yang dapat dipanggil oleh aplikasi apa pun, dengan spesifikasi OpenAPI 3.1 dan koleksi siap pakai untuk Postman, Insomnia, dan Hoppscotch. Tidak ada port basis data yang dibuka.

    Panduan PostgreSQL
  8. Kereta Api ke Power BI Power Query M

    Tempelkan Power Query M yang dihasilkan ke dalam Power BI Advanced Editor dan laporan akan membaca hasil Railway secara langsung melalui HTTPS — tanpa driver ODBC, tanpa port basis data yang dibuka.

    Cara kerja Power BI
  9. Kereta api ke Airtable Platform otomatisasi

    Sinkronkan baris data Railway ke dalam basis data Airtable sesuai jadwal, atau ambil data tersebut di dalam skrip otomatisasi Airtable.

    Panduan PostgreSQL
  10. Kereta api ke Baserow Platform otomatisasi

    Mengunggah tabel Baserow dari Railway melalui endpoint REST — baik yang dihosting sendiri maupun di cloud Baserow.

    Panduan PostgreSQL
  11. Kereta api ke SeaTable Platform otomatisasi

    Jaga agar basis data SeaTable selalu diperbarui dengan data perkeretaapian tanpa mengekspor file atau mengekspos basis data.

    Panduan PostgreSQL
  12. Kereta Api ke Smartsheet Platform otomatisasi

    Masukkan hasil perkeretaapian ke dalam grid Smartsheet sehingga rencana dan laporan dibaca dari sistem sumber, bukan dari ekspor minggu lalu.

    Panduan PostgreSQL
  13. Kereta api menuju Anvil Anvil Works · Platform aplikasi

    Dukung aplikasi Python Anvil dengan Railway melalui endpoint REST, alih-alih menyematkan kredensial basis data di dalam aplikasi.

    Panduan PostgreSQL
  14. Untuk alat AI
  15. Server MCP Kereta Api Klien Claude, Cursor, dan MCP

    Berikan akses baca saja kepada asisten AI ke Railway beserta skema yang dibutuhkannya untuk menulis SQL yang benar — tanpa kredensial di obrolan.

    Panduan PostgreSQL
  16. Dikirimkan kepada orang-orang
  17. Peringatan dan laporan perkeretaapian Slack · Discord · Email · Webhook

    Atur jadwal untuk kueri Railway dan kirimkan baris data ke Slack, Discord, email, atau webhook yang ditandatangani — atau tahan pesan hingga jumlah baris, ambang batas, atau perubahan persentase melampaui batas yang Anda tetapkan.

    Cara kerja peringatan dan laporan

Cara kerjanya

5 langkah, tanpa perubahan firewall masuk.

01

Instal Network Agent di mana pun yang sesuai untuk Anda. Agen ini membuka satu koneksi keluar dan tidak pernah mendengarkan, sehingga Railway melihat klien biasa dan jaringan Anda tidak memerlukan aturan masuk.

02

Buka layanan Postgres, masuk ke tab Variabel, dan salin DATABASE_PUBLIC_URL. Itu adalah variabel publik — DATABASE_URL adalah variabel privat dan tidak akan berfungsi dari luar Railway.

03

Tempelkan saja. Host, port, database, nama pengguna, dan kata sandi akan dibaca langsung dari situ.

04

Periksa apakah port sudah terhubung. Pihak kereta api menetapkan port proxy untuk setiap layanan dan jarang sekali 5432, jadi kolom ini perlu diperiksa sebelum Anda menyimpan.

05

Simpan. Microsoft Excel, Google Sheets, Power BI, MCP, dan REST semuanya membaca melalui satu koneksi tersebut, atau menggabungkannya dengan sumber lain Anda dalam satu pernyataan baca-saja.

Analisis mendalam fitur

Apa yang diberikan Kereta Api kepada Anda

DATABASE_PUBLIC_URL, bukan DATABASE_URL

Inilah cara paling umum terjadinya kegagalan pada sambungan kereta api, dan kegagalan ini terjadi dengan cara yang paling tidak membantu.

  • Nama host privat Railway berakhiran .railway.internal dan hanya dapat diakses di dalam jaringan Railway sendiri. Dari luar jaringan tersebut, nama host tidak dapat diakses sama sekali.
  • Agen tersebut beroperasi di luar jalur kereta api, sehingga alamat pribadi tersebut tidak pernah dapat dihubungi. — koneksi tersebut akan langsung terputus dan tidak memberi tahu alasannya.
  • Jadi, kartu tersebut langsung menolaknya dan menyebutkan solusinya: gunakan host proxy TCP publik dari DATABASE_PUBLIC_URL. Itu mengubah timeout tanpa pemberitahuan menjadi kalimat yang dapat Anda tindak lanjuti.
  • Host proxy publik berakhiran .proxy.rlwy.net. Implementasi Railway versi lama menggunakan nama host .railway.app, dan nama host tersebut masih berfungsi jika layanan Anda menggunakan nama tersebut.

Port tersebut per layanan, jadi tidak ada yang bisa menebaknya.

Sebagian besar layanan Postgres terkelola merespons pada port 5432. Proxy Railway tidak, dan kartu tersebut sengaja membiarkan kolom tersebut kosong.

  • Railway menetapkan port proxy untuk setiap layanan. Dua basis data dalam proyek yang sama akan memiliki port yang berbeda, dan keduanya bukan 5432.
  • Kolom port tidak memiliki nilai default karena alasan tersebut. Nilai 5432 yang diasumsikan akan terlihat terisi tetapi kemudian gagal terhubung, yang lebih buruk daripada kotak kosong.
  • Menempelkan DATABASE_PUBLIC_URL akan mengisi port bersama dengan semua hal lainnya, sehingga jalur normal tidak akan pernah meminta Anda untuk mencarinya secara terpisah.
  • Jika Anda mengetik kolom secara manual, port adalah bagian yang perlu disalin dengan cermat. — bidang inilah yang paling mungkin salah dan yang menghasilkan kegagalan yang paling tidak informatif.

Sertifikat yang ditandatangani sendiri, dan apa arti terenkripsi di sini

Citra Postgres dari Railway menyertakan sertifikat yang ditandatangani sendiri, yang menentukan bagaimana agen menangani TLS.

  • Penggunaan SSL diaktifkan secara default dan koneksi dienkripsi. Agen tersebut membutuhkan TLS, bukan hanya menawarkannya.
  • Rantai sertifikat tidak diverifikasi. Verifikasi penuh akan menolak sertifikat yang ditandatangani sendiri oleh Railway, jadi mewajibkan enkripsi tanpa memvalidasi rantai adalah pengaturan yang sebenarnya sesuai dengan layanan tersebut.
  • Anggap saja itu sebagai perlindungan terhadap siapa pun yang membaca lalu lintas di perjalanan, bukan sebagai bukti apa yang telah Anda capai.
  • Tidak ada pooler di depan Railway Postgres dan kartu tersebut tidak menyatakan sebaliknya. — ini adalah koneksi langsung melalui proxy, tanpa mode pooling yang dapat dipilih.
-- Postgres biasa, hanya baca, melalui proxy publik SELECT c.name, COUNT(o.id) AS orders, SUM(o.amount) AS revenue FROM public.customers AS c JOIN public.orders AS o ON o.customer_id = c.id WHERE o.placed_at >= now() - interval '30 days' GROUP BY c.name ORDER BY revenue DESC;

Digunakan bersama oleh setiap konektor basis data.

Hal ini berlaku untuk setiap konektor basis data.

  • Hanya untuk keberangkatan — agen membuka satu koneksi terenkripsi ke Query Streams. Tidak ada port masuk yang perlu diteruskan, tidak ada VPN, tidak ada daftar IP yang diizinkan, tidak ada informasi tentang basis data Anda yang terekspos ke internet.
  • Kredensial tetap tersimpan. — Nama pengguna dan kata sandi basis data tersimpan di mesin tempat Anda menginstal agen. Query Streams tidak pernah menerimanya dan tidak dapat mengakses basis data Anda sendiri.
  • Hanya baca, diberlakukan — satu pernyataan dalam satu waktu, hanya SELECT dan sejenisnya. Permintaan penulisan ditolak di mesin Anda sendiri sebelum dikirim ke server, alih-alih bergantung pada izin yang telah diatur oleh seseorang.
  • Sebarkan agen sebanyak yang Anda inginkan. — satu per situs, wilayah, atau cloud. Setiap sumber data yang dapat mereka lihat muncul dalam satu menu tarik-turun, sehingga tidak ada yang perlu tahu agen mana yang menghosting apa.

Yang Anda dapatkan setelah kueri disimpan

  • Bagikan kemampuannya, bukan kode SQL-nya. — seorang kolega atau mitra eksternal dapat menjalankan kueri Anda dan mengubah filternya tanpa pernah melihat pernyataan di baliknya.
  • Filter dari kedua arah — deklarasikan sendiri sebagai @variabel, atau biarkan konektor menemukan nilai literal yang sudah ada di klausa WHERE Anda dan menawarkannya sebagai menu tarik-turun.
  • Bacalah dari mana saja — Microsoft Excel, Google Sheets, Power BI, REST API, asisten AI melalui MCP, Query Builder, dan Nova semuanya membaca kueri tersimpan yang sama.
  • Jalankan beberapa sekaligus — lima kueri tersimpan ke dalam lima tab lembar kerja, dialirkan secara bersamaan, sebesar apa pun hasilnya.
  • Hubungkan dengan hal lain yang sudah Anda hubungkan. — basis data lain, API bisnis, atau folder file, dalam satu pernyataan baca saja.

SQL lintas sumber

Hubungkan Railway dengan data Anda yang lain.

Satu pernyataan dapat mencakup Railway dan koneksi Anda lainnya sekaligus. Setiap sumber hanya menjalankan bagian yang dapat dijalankannya, mengalirkan hasilnya kembali, dan penggabungan terjadi secara terpusat — sumber-sumber tersebut tidak pernah berkomunikasi satu sama lain dan tidak ada yang disalin ke mana pun.

3 koneksi · 3 agen

Kereta Api Postgres Terkelola
Microsoft SQL Server Mesin relasional
Stripe Pembayaran & penagihan

Satu pernyataan

-- tidak ada yang disalin, tidak ada yang digabungkan, tidak ada yang dijadwalkan
PILIH   c.region, COUNT(*) AS orders, SUM(i.amount_due) AS invoiced
DARI     aplikasi kereta apiketertiban umum1 f
GABUNG     erp_sql.dbo.pelanggan2     c ON c.id = f.customer_id
GABUNG     penagihan.stripe.faktur3   i ON i.customer = c.stripe_id
KELOMPOKKAN BERDASARKAN c.wilayah
PESAN OLEH ditagih DESC;

Tiga bagian tersebut adalah koneksi, skema, dan tabel — dan nama koneksi adalah apa pun yang Anda sebutkan. Kolom ilustratif; tabel Anda akan menjadi tabel Anda. Hanya baca berlaku untuk setiap bagian: SELECT, WITH, dan EXPLAIN saja, dengan batasan seberapa banyak data yang dapat diberikan oleh satu sumber untuk satu kueri. Cara kerja kueri terfederasi

Detail koneksi

Apa yang dibutuhkan Perusahaan Kereta Api?

Tuan rumah
<name>.proxy.rlwy.net, proxy TCP publik. Implementasi lama di .railway.app juga berfungsi.
Pelabuhan
Ditetapkan per layanan oleh Perusahaan Kereta Api. Tidak ada nilai default — nilai tersebut berasal dari DATABASE_PUBLIC_URL.
Pengemudi
Npgsql, dibawa oleh agen — tidak perlu diinstal di sisi Kereta Api.
Format tempel
DATABASE_PUBLIC_URL dari tab Variabel layanan
Basis data
jalur kereta api, yang merupakan nama standar yang digunakan oleh Railway untuknya.
Nama pengguna
postgres
TLS
Diperlukan, dan dipaksakan oleh agen untuk host Railway. Terenkripsi; rantai sertifikat tidak diverifikasi, yang merupakan kebutuhan sertifikat yang ditandatangani sendiri oleh Railway.
Pengumpulan
Tidak ada. Agen tidak menerapkan adaptasi pooler apa pun untuk Kereta Api.
Bukan kartu ini
Nama host pribadi .railway.internal — kartu tersebut menolaknya dan memberi tahu Anda variabel mana yang harus digunakan sebagai gantinya.
Disimpan sebagai
PostgreSQL, dengan Railway tetap digunakan sebagai logo — tidak ada tipe koneksi yang disebut Railway.
Skema default
publik, yang merupakan makna dari referensi terfederasi.

Perbedaan antara variabel privat dan publik adalah inti dari kartu ini. Railway menampilkan DATABASE_URL secara mencolok dan itu adalah variabel yang tepat untuk layanan yang berjalan di dalam Railway, yang merupakan sebagian besar tujuan Railway. Pembaca eksternal adalah pengecualian, dan pengecualian tersebut membutuhkan variabel lain. Menolak nama host internal berdasarkan nama — daripada membiarkannya tidak terresolusi dan habis waktu — adalah perbedaan antara koreksi lima detik dan dua puluh menit mencurigai firewall.

Kolom port yang kosong itu disengaja dan patut dipertahankan. Setiap insting mengatakan untuk mengisi 5432 terlebih dahulu karena hampir setiap layanan Postgres menggunakannya, tetapi proxy Railway menetapkan port per layanan, jadi 5432 yang diisi terlebih dahulu pasti salah. Kolom wajib yang kosong mengajukan pertanyaan; nilai default yang salah menjawabnya secara tidak tepat dan tampak sudah pasti.

Untuk kueri lintas sumber, Railway adalah Postgres biasa. Koneksi yang Anda sebut railway_app ditulis sebagai railway_app.public.orders, dan terhubung ke folder CSV, sistem pencatatan lokal, atau API penagihan dalam satu pernyataan baca saja — tanpa ada yang disalin dan tanpa ada yang dijadwalkan.

Dokumentasi vendor: docs.railway.com

Pertanyaan yang Sering Diajukan (FAQ)

Pertanyaan tentang Kereta Api

Alat apa saja yang dapat membaca data perkeretaapian melalui Query Streams?

Semuanya, dari satu koneksi: Excel, Google Sheets, MCP, REST API, Airtable, Baserow, SeaTable, Smartsheet, Anvil, Power BI, peringatan dan laporan terjadwal. Hubungkan basis data sekali dan setiap antarmuka akan membaca koneksi baca-saja yang sama — tidak ada pengaturan per alat dan tidak ada salinan data kedua.

Apakah saya perlu membuka port firewall ke database Kereta Api saya?

Tidak. Query Streams Network Agent berjalan di dalam jaringan Anda dan membuka satu koneksi keluar terenkripsi. Tidak ada yang mendengarkan lalu lintas masuk, tidak diperlukan VPN, dan basis data mempertahankan aturan firewall yang ada.

Bisakah Query Streams mengubah data di Railway?

Tidak. Agen tersebut memberlakukan mode baca saja pada saat eksekusi — satu pernyataan dalam satu waktu, hanya SELECT dan sejenisnya. Kredensial tetap berada di agen dan tidak pernah dikirim ke Query Streams.

Apa yang dibutuhkan Query Streams untuk terhubung ke Railway?

Host yang dapat dijangkau, peran, dan kata sandinya — agen membawa driver, jadi tidak ada yang diinstal pada basis data. Host: <nama>.proxy.rlwy.net, proxy TCP publik. Penyebaran lama pada .railway.app juga berfungsi. Port: Ditetapkan per layanan oleh Railway. Tidak ada default — berasal dari DATABASE_PUBLIC_URL. Driver: Npgsql, dibawa oleh agen — tidak ada yang perlu diinstal di sisi Railway. Format tempel: DATABASE_PUBLIC_URL dari tab Variabel layanan.

Bisakah saya menggabungkan Railway dengan database lain dalam satu kueri yang sama?

Ya — itu adalah kueri terfederasi. Satu pernyataan dapat merujuk ke Railway dan koneksi Anda lainnya sekaligus, ditulis sebagai connection.schema.table. Setiap sumber hanya menjalankan bagian yang dapat dijalankannya dan mengalirkan hasilnya kembali; penggabungan terjadi secara terpusat, sehingga sumber-sumber tersebut tidak pernah terhubung satu sama lain dan tidak ada yang disalin atau dijadwalkan. Hanya baca berlaku untuk setiap bagian — hanya SELECT, WITH, dan EXPLAIN — dan ada batasan seberapa banyak data yang dapat diserahkan oleh satu sumber untuk satu kueri. Kueri terfederasi adalah fitur rencana; halaman kueri terfederasi memuat batasan sumber dan ukuran saat ini.

Apakah menghubungkan Railway berbeda dengan menghubungkan PostgreSQL?

Hanya string koneksi saja. Railway menggunakan protokol wire PostgreSQL, sehingga filter, penjadwalan, berbagi, add-on Excel dan Google Sheets, serta server MCP semuanya berfungsi identik. Kartu Railway secara otomatis mengisi host, port, dan pengaturan SSL yang diharapkan oleh penyedia layanan.

Apakah ada panduan Railway to Excel?

Ya — ini adalah panduan PostgreSQL, dan panduan ini benar untuk Railway seperti yang tertulis. Railway menggunakan protokol komunikasi PostgreSQL, jadi Railway ke Excel, Railway ke Google Sheets, dan setiap tujuan lainnya mengikuti langkah-langkah yang sama. Satu-satunya bagian yang spesifik untuk Railway adalah string koneksi, dan kartu Railway akan mengisinya untuk Anda.

Tempatkan jalur kereta api di tempat pekerjaan berlangsung.

Instal agen, arahkan ke basis data Anda, dan pilih tujuan.

Hanya baca Hanya untuk keberangkatan Informasi kredensial tetap tersimpan pada agen.