Android

Debian 10 Postgresql Nasıl Kurulur

How to Install and configuration PostgreSQL on Ubuntu Linux

How to Install and configuration PostgreSQL on Ubuntu Linux

İçindekiler:

Anonim

Genellikle Postgres olarak bilinen PostgreSQL, açık kaynaklı genel amaçlı bir nesne-ilişkisel veritabanı yönetim sistemidir. Çevrimiçi yedeklemeler, zaman içinde kurtarma, iç içe işlemler, SQL ve JSON sorgulama, çoklu sürüm eşzamanlılık kontrolü (MVCC), eşzamansız çoğaltma ve daha fazlası gibi birçok güçlü özelliğe sahiptir.

Bu eğitim, Debian 10'a PostgreSQL veritabanı sunucusunu kurma adımlarında size yol gösterir. Ayrıca temel veritabanı yönetiminin temellerini de inceleyeceğiz.

PostgreSQL Kurulumu

Bu makaleyi yazarken, varsayılan Debian depolarında bulunan PostgreSQL'in en son sürümü PostgreSQL 11.5 sürümüdür.

Debian sunucunuza PostgreSQL yüklemek için sudo ayrıcalıklarına sahip root veya kullanıcı olarak aşağıdaki adımları uygulayın:

  1. APT paket dizinini güncelleyerek başlayın:

    sudo apt update

    PostgreSQL sunucusunu kurun ve PostgreSQL veritabanı için ek özellikler sağlayan bir katkıda bulunun:

    sudo apt install postgresql postgresql-contrib

    Kurulum tamamlandığında, PostgreSQL servisi başlayacaktır. Yüklemeyi doğrulamak için psql aracını kullanarak sunucu sürümünü yazdırın:

    sudo -u postgres psql -c "SELECT version();"

    Çıktı aşağıdaki gibi görünmelidir:

    PostgreSQL 11.5 (Debian 11.5-1+deb10u1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit

psql , PostgreSQL sunucusuyla etkileşime girmenizi sağlayan etkileşimli bir terminal programıdır.

PostgreSQL Rolleri ve Kimlik Doğrulama Yöntemleri

PostgreSQL, roller kavramını kullanarak veritabanı erişim izinlerini işler. Rolü nasıl ayarladığınıza bağlı olarak, bir veritabanı kullanıcısını veya bir grup veritabanı kullanıcısını temsil edebilir.

PostgreSQL çeşitli kimlik doğrulama yöntemlerini destekler. En sık kullanılan yöntemler:

  • Güven - pg_hba.conf tanımlanan ölçütler pg_hba.conf sürece rol parola olmadan bağlanabilir. Parola - Parola sağlayarak rol bağlanabilir. Parolalar scram-sha-256 md5 ve password (açık metin) olarak depolanabilir. Kimlik - Yalnızca TCP / IP bağlantıları için desteklenir. İsteğe bağlı bir kullanıcı adı eşlemesi ile istemcinin işletim sistemi kullanıcı adını elde ederek çalışır.Peer - Ident ile aynıdır, ancak yalnızca yerel bağlantılarda desteklenir.

PostgreSQL istemci kimlik doğrulaması pg_hba.conf adlı yapılandırma dosyasında tanımlanır. Yerel bağlantılar için PostgreSQL, eş kimlik doğrulama yöntemini kullanacak şekilde ayarlanmıştır.

PostgreSQL kurulduğunda “postgres” kullanıcısı otomatik olarak oluşturulur. Bu kullanıcı PostgreSQL örneği için süper kullanıcıdır ve MySQL kök kullanıcısına eşdeğerdir.

PostgreSQL sunucusunda “postgres” olarak oturum açmak için kullanıcı postgresine geçin ve psql yardımcı programını kullanarak bir PostgreSQL bilgi istemine erişin:

sudo su - postgres psql

Buradan PostgreSQL sunucusuyla etkileşim kurabilirsiniz. PostgreSQL kabuk türünden çıkmak için:

\q

Kullanıcıları değiştirmeden PostgreSQL komut istemine erişmek için sudo komutunu kullanabilirsiniz:

sudo -u postgres psql

postgres kullanıcısı genellikle yalnızca yerel ana bilgisayardan kullanılır.

PostgreSQL Rolü ve Veritabanı Oluşturma

createuser komutu, komut satırından yeni roller oluşturmanıza olanak tanır. Yalnızca CREATEROLE ayrıcalığına sahip süper kullanıcılar ve roller yeni roller oluşturabilir.

Aşağıdaki örnekte, kylo adlı yeni bir rol oluşturacağız, kylo adlı bir veritabanı ve veritabanına role ayrıcalık kylodb .

  1. İlk olarak, aşağıdaki komutu vererek rolü oluşturun:

    sudo su - postgres -c "createuser kylo"

    Ardından, createdb komutunu kullanarak veritabanını oluşturun:

    sudo su - postgres -c "createdb kylodb"

    Veritabanında kullanıcıya izin vermek için PostgreSQL kabuğuna bağlanın:

    sudo -u postgres psql

    Aşağıdaki sorguyu çalıştırın:

    grant all privileges on database kylodb to kylo;

PostgreSQL Sunucusuna Uzaktan Erişimi Etkinleştir

Varsayılan olarak, PostgreSQL, sunucu sadece yerel arayüzde dinler 127.0.0.1 .

postgresql.conf yapılandırma dosyasını açın ve CONNECTIONS AND AUTHENTICATION bölümüne listen_addresses = '*' ekleyin. Bu, sunucuya tüm ağ arabirimlerini dinlemesini bildirir.

sudo nano /etc/postgresql/11/main/postgresql.conf /etc/postgresql/11/main/postgresql.conf

#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on;

Dosyayı kaydedin ve değişikliklerin etkili olması için PostgreSQL hizmetini yeniden başlatın:

sudo service postgresql restart

Değişiklikleri ss yardımcı programıyla doğrulayın:

ss -nlt | grep 5432

LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128:5432:*

Çıktı, PostgreSQL sunucusunun tüm arabirimleri (0.0.0.0) dinlediğini göstermelidir.

Son adım, pg_hba.conf dosyasını düzenleyerek sunucuyu uzak oturum pg_hba.conf kabul edecek şekilde yapılandırmaktır.

Aşağıda farklı kullanım durumlarını gösteren bazı örnekler verilmiştir:

/etc/postgresql/11/main/pg_hba.conf

# TYPE DATABASE USER ADDRESS METHOD # The user jane will be able to access all databases from all locations using an md5 password host all jane 0.0.0.0/0 md5 # The user jane will be able to access only the janedb from all locations using an md5 password host janedb jane 0.0.0.0/0 md5 # The user jane will be able to access all databases from a trusted location (192.168.1.134) without a password host all jane 192.168.1.134 trust

Sonuç

Debian 10'da PostgreSQL'in nasıl kurulacağını ve yapılandırılacağını gösterdik. Bu konu hakkında daha fazla bilgi için PostgreSQL Belgelerine başvurun.

debian postgresql veritabanı