Rumah > pembangunan bahagian belakang > Tutorial Python > Cara Mencipta Pangkalan Data dan Sentiasa Bersambung dengannya dalam PostgreSQL Tanpa Memerlukan Akses Pengguna Super

Cara Mencipta Pangkalan Data dan Sentiasa Bersambung dengannya dalam PostgreSQL Tanpa Memerlukan Akses Pengguna Super

Mary-Kate Olsen
Lepaskan: 2024-12-27 04:48:20
asal
709 orang telah melayarinya

How to Create a Database and Always Connect to It in PostgreSQL Without Needing Superuser Access

Dalam panduan ini, kami akan menjalankan langkah-langkah untuk membuat pangkalan data dalam PostgreSQL sebagai bukan pengguna super, memberikan keistimewaan yang diperlukan dan memastikan anda boleh sentiasa menyambung ke pangkalan data anda yang baru dibuat tanpa perlu log masuk sebagai pengguna super.

Ini berguna untuk pembangun atau pengguna yang ingin mengurus pangkalan data mereka sendiri dalam PostgreSQL tanpa memerlukan kebenaran pentadbiran untuk setiap tindakan.

Apa yang Kami Akan Capai:

1.Buat pangkalan data baharu (tortoise-demo).
2.Berikan kebenaran kepada peranan bukan pengguna super (pengguna penguji) untuk mencipta dan mengakses pangkalan data.
3.Tukar ke pangkalan data (tortoise-demo) dengan lancar tanpa perlu beralih kepada superuser terlebih dahulu.
4.Konfigurasikan PostgreSQL untuk sentiasa bersambung ke kura-kura-demo secara automatik apabila log masuk sebagai penguji.

Langkah 1: Berikan Kebenaran yang Diperlukan kepada penguji

Sebelum anda boleh mencipta pangkalan data sebagai bukan pengguna super, anda perlu memastikan bahawa peranan anda (dalam kes ini, penguji) mempunyai kebenaran yang sesuai untuk mencipta pangkalan data.

Memberi Keistimewaan CREATEDB

Secara lalai, peranan PostgreSQL yang baru dibuat tidak mempunyai kebenaran untuk mencipta pangkalan data. Jika anda log masuk sebagai superuser (seperti postgres), anda boleh memberikan kebenaran yang diperlukan kepada peranan penguji.

1.Log masuk sebagai pengguna super (cth., postgres):

   psql -U postgres
Salin selepas log masuk
Salin selepas log masuk

2.Berikan Keistimewaan CREATEDB kepada pengguna penguji:

Jalankan pertanyaan SQL berikut untuk membenarkan penguji mencipta pangkalan data baharu:

   GRANT CREATEDB TO "testuser";
Salin selepas log masuk
Salin selepas log masuk

Ini akan membolehkan penguji mencipta pangkalan data tanpa memerlukan keistimewaan superuser.

3.Keluar daripada sesi pengguna super:

   \q
Salin selepas log masuk
Salin selepas log masuk

Langkah 2: Log masuk sebagai penguji dan Cipta Pangkalan Data

Sekarang peranan penguji mempunyai keistimewaan CREATEDB, anda boleh log masuk sebagai penguji dan mencipta pangkalan data baharu.

Log masuk sebagai penguji:

Untuk log masuk sebagai peranan penguji, jalankan arahan berikut:

psql -U "testuser" -d postgres -W
Salin selepas log masuk
Salin selepas log masuk
  • Pilihan "penguji" -U menentukan pengguna.
  • Pilihan -d postgres menghubungkan anda ke pangkalan data postgres (pangkalan data pentadbiran lalai).
  • Pilihan -W menggesa kata laluan yang anda tetapkan untuk penguji (cth., 1234567890).

Buat Pangkalan Data demo kura-kura:

Setelah log masuk, cipta pangkalan data kura-kura-demo baharu:

CREATE DATABASE "tortoise-demo";
Salin selepas log masuk
Salin selepas log masuk

Arahan ini mencipta pangkalan data baharu yang dipanggil tortoise-demo.

Tetapkan Pemilikan (Pilihan):

Jika anda ingin memastikan bahawa penguji mempunyai kawalan penuh ke atas pangkalan data, anda boleh memberikan pemilikan pangkalan data kepada pengguna penguji:

   psql -U postgres
Salin selepas log masuk
Salin selepas log masuk

Langkah ini adalah pilihan, tetapi ia memastikan bahawa peranan penguji mempunyai kawalan pentadbiran penuh ke atas pangkalan data demo kura-kura.

Langkah 3: Tukar kepada Pangkalan Data demo kura-kura

Selepas mencipta pangkalan data, anda mungkin mahu beralih kepada pangkalan data yang baru dibuat (tortoise-demo) dan mula bekerja dengannya.

Untuk menyambung ke demo kura-kura, jalankan:

   GRANT CREATEDB TO "testuser";
Salin selepas log masuk
Salin selepas log masuk

Arahan c menukar sesi semasa kepada pangkalan data demo kura-kura. Dari sudut ini, anda boleh melaksanakan pertanyaan SQL dan mengurus pangkalan data.

Langkah 4: Automatikkan Sambungan kepada kura-kura-demo Tanpa Perlu Bertukar Setiap Kali

Sekarang anda telah berjaya mencipta dan bertukar kepada pangkalan data demo kura-kura, langkah seterusnya ialah mengautomatikkan proses ini. Khususnya, kami ingin mengkonfigurasi PostgreSQL supaya setiap kali anda log masuk sebagai folasayoolayemi, ia secara automatik menghubungkan anda ke pangkalan data demo kura-kura tanpa perlu menukar secara eksplisit.

Pilihan 1: Tetapkan Pembolehubah Persekitaran PGDATABASE

Satu cara mudah untuk memastikan anda sentiasa menyambung ke pangkalan data demo kura-kura adalah dengan menetapkan pembolehubah persekitaran PGDATABASE. Pembolehubah ini memberitahu PostgreSQL pangkalan data yang hendak digunakan secara lalai semasa menyambung.

1.Tetapkan PGDATABASE untuk sesi semasa:

Anda boleh menetapkan pembolehubah persekitaran dalam sesi terminal semasa anda seperti:

   \q
Salin selepas log masuk
Salin selepas log masuk

Ini akan memastikan bahawa sebarang arahan psql berikutnya yang anda jalankan akan bersambung secara automatik ke demo kura-kura secara lalai.

2.Jadikan perubahan kekal:

Untuk menjadikan perubahan ini berterusan merentas sesi terminal, tambahkan perintah eksport pada fail konfigurasi shell anda (.bashrc, .zshrc, dll.).

Sebagai contoh, jika anda menggunakan bash, tambahkan baris berikut pada fail ~/.bashrc anda:

psql -U "testuser" -d postgres -W
Salin selepas log masuk
Salin selepas log masuk

Kemudian, jalankan:

CREATE DATABASE "tortoise-demo";
Salin selepas log masuk
Salin selepas log masuk

Ini akan memastikan bahawa setiap kali anda membuka sesi terminal baharu, PostgreSQL akan menyambung secara automatik ke kura-kura-demo tanpa perlu menentukan pangkalan data.

Pilihan 2: Sentiasa Tentukan Pangkalan Data dalam Perintah Sambungan

Jika anda memilih untuk tidak menggunakan pembolehubah persekitaran PGDATABASE, anda sentiasa boleh menentukan nama pangkalan data dalam arahan sambungan psql:

ALTER DATABASE "tortoise-demo" OWNER TO "testuser";
Salin selepas log masuk

Dengan cara ini, anda secara langsung menentukan pangkalan data demo kura-kura setiap kali anda menyambung, yang menghapuskan keperluan untuk sebarang perubahan konfigurasi.

Langkah Utama:

1.Berikan Keistimewaan CREATEDB: Pastikan peranan penguji mempunyai keistimewaan yang diperlukan untuk mencipta pangkalan data.
2.Buat Pangkalan Data: Log masuk sebagai penguji dan cipta pangkalan data demo kura-kura.
3.Tukar ke Pangkalan Data: Gunakan arahan c untuk bertukar kepada kura-kura-demo.
4.Automasikan Sambungan Pangkalan Data: Tetapkan pembolehubah persekitaran PGDATABASE untuk sentiasa bersambung ke demo kura-kura secara lalai atau nyatakan nama pangkalan data dalam arahan psql secara eksplisit.

Kesimpulan:

Dengan mengikuti langkah ini, anda boleh mencipta dan mengurus pangkalan data anda sendiri dalam PostgreSQL sebagai bukan pengguna super, tanpa memerlukan keistimewaan pengguna super setiap kali anda perlu mencipta pangkalan data baharu. Keupayaan untuk menyambung secara automatik ke pangkalan data tertentu akan menjadikan aliran kerja anda lebih cekap, terutamanya untuk pembangun yang bekerja dengan projek atau aplikasi tertentu.

Terima kasih kerana membaca...
Selamat Pengekodan!

Atas ialah kandungan terperinci Cara Mencipta Pangkalan Data dan Sentiasa Bersambung dengannya dalam PostgreSQL Tanpa Memerlukan Akses Pengguna Super. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan