Rumah Tutorial sistem LINUX DBA menemui masalah baharu dengan PostgreSQL

DBA menemui masalah baharu dengan PostgreSQL

Jan 13, 2024 am 09:06 AM
linux tutorial linux Topi Merah sistem linux arahan linux pensijilan linux linux topi merah video linux

DBA menemui masalah baharu dengan PostgreSQL

Seperti biasa, pengguna yang menaik taraf atau memulakan kluster baharu akan melihat prestasi yang lebih baik (cth., imbasan indeks selari yang lebih baik, gabungan gabungan dan subkueri yang tidak berkaitan, pengagregatan lebih pantas, gabungan lebih pintar pada pelayan jauh) dan pengagregatan), ini semua berfungsi di luar kotak , tetapi dalam artikel ini saya ingin bercakap tentang sesuatu yang tidak berfungsi di luar kotak dan sebenarnya memerlukan anda mengambil beberapa langkah untuk mendapat manfaat daripadanya. Ciri yang diserlahkan di bawah disusun daripada perspektif DBA dan tidak lama lagi akan ada artikel yang merangkumi perubahan daripada perspektif pembangun.

Naik Taraf Nota

Mula-mula beberapa petua untuk menaik taraf daripada persediaan sedia ada - terdapat beberapa perkara kecil yang boleh menyebabkan masalah apabila berhijrah daripada 9.6 atau lebih lama, jadi pastikan anda menguji peningkatan pada salinan berasingan dan jalankan melalui keluaran sebelum melakukan peningkatan sebenar Semua mungkin soalan dalam huraian. Kelemahan yang paling ketara ialah:

Semua fungsi yang mengandungi "xlog" telah dinamakan semula untuk menggunakan "wal" dan bukannya "xlog".

Penamaan terakhir mungkin dikelirukan dengan log pelayan biasa, jadi ini adalah perubahan "untuk berjaga-jaga". Jika menggunakan mana-mana alat sandaran/replikasi/HA pihak ketiga, pastikan ia adalah terkini.

Folder pg_log yang menyimpan log pelayan (mesej ralat/amaran, dsb.) telah dinamakan semula kepada "log".

Pastikan anda mengesahkan bahawa penghuraian log atau skrip grep anda (jika ada) berfungsi.

Secara lalai, pertanyaan akan menggunakan sehingga 2 proses latar belakang.

Jika anda menggunakan nilai lalai 10 dalam tetapan postgresql.conf pada mesin dengan bilangan CPU yang rendah, anda mungkin melihat lonjakan dalam penggunaan sumber kerana pemprosesan selari didayakan secara lalai - ini adalah perkara yang baik kerana ia sepatutnya bermakna untuk pertanyaan yang lebih pantas. Jika anda mahukan gelagat lama, tetapkan max_parallel_workers_per_gather kepada 0.

Secara lalai, sambungan replikasi untuk localhost didayakan.

Untuk memudahkan perkara seperti ujian, localhost dan sambungan replikasi soket Unix tempatan kini didayakan dalam mod "amanah" (tiada kata laluan) dalam pg_hba.conf! Oleh itu, pastikan anda menukar konfigurasi jika pengguna bukan DBA lain mempunyai akses kepada mesin pengeluaran sebenar.

Kegemaran saya dari perspektif DBA

Salinan logik

Ciri yang telah lama ditunggu-tunggu ini memerlukan persediaan mudah dengan kehilangan prestasi yang minimum apabila anda hanya mahu menyalin satu jadual, sebahagian daripada jadual atau semua jadual, yang juga bermakna bahawa versi utama berikutnya boleh dinaik taraf dengan masa henti sifar! Dari segi sejarah (memerlukan Postgres 9.4+), ini boleh dilakukan dengan menggunakan sambungan pihak ketiga atau penyelesaian berasaskan pencetus perlahan. Bagi saya ini adalah 10 ciri terbaik.

Isytihar partition

Cara pengurusan partition sebelum ini melibatkan pewarisan dan penciptaan pencetus untuk mengubah hala sisipan ke jadual yang betul, yang menjengkelkan, apatah lagi impak prestasi. Pada masa ini disokong ialah skema pembahagian "julat" dan "senarai". Jika sesiapa kehilangan pembahagian "cincang" dalam sesetengah enjin pangkalan data, anda boleh menggunakan pembahagian "senarai" dengan ungkapan untuk mencapai fungsi yang sama.

Indeks cincang yang tersedia

Indeks cincang kini dilog WAL dan oleh itu selamat ranap, dan telah memperoleh beberapa peningkatan prestasi, menjadikannya lebih pantas daripada indeks B-tree standard pada data yang lebih besar untuk carian mudah. Saiz indeks yang lebih besar juga disokong.

Statistik pengoptimum rentas lajur

Statistik sedemikian perlu dibuat secara manual pada set lajur jadual untuk menunjukkan bahawa nilai sebenarnya bergantung antara satu sama lain dalam beberapa cara. Ini akan menangani pertanyaan perlahan di mana perancang berpendapat terdapat sangat sedikit data yang dikembalikan (produk kebarangkalian selalunya menghasilkan bilangan yang sangat kecil) dan dengan itu mengakibatkan prestasi yang lemah dengan jumlah data yang besar (cth. memilih gabungan "gelung bersarang").

Syot kilat selari pada replika

Kini boleh menggunakan berbilang proses (-bendera kerja) dalam pg_dump untuk mempercepatkan sandaran pada pelayan siap sedia.

Selaraskan tingkah laku pekerja pemprosesan selari dengan lebih baik

Rujuk kepada max_parallel_workers dan min_parallel_table_scan_size/min_parallel_index_scan_size parameter. Saya mengesyorkan meningkatkan nilai lalai untuk dua yang terakhir sedikit (8MB, 512KB).

Peranan pemantauan terbina dalam baharu untuk penggunaan alat yang lebih mudah

Peranan baharu pg_monitor, pg_read_all_settings, pg_read_all_stats dan pg_stat_scan_tables memudahkan anda melaksanakan pelbagai tugas pemantauan - yang sebelum ini perlu dilakukan menggunakan akaun superuser atau beberapa fungsi pembungkus SECURITY DEFINER.

Slot replikasi sementara (setiap sesi) untuk penjanaan replika yang lebih selamat

Sambungan Sumbangan baharu untuk menyemak kesahihan indeks B-tree

Dua semakan pintar ini mendedahkan ketidakkonsistenan struktur dan kandungan yang tidak diliputi oleh pengesahan peringkat halaman. Semoga lebih mendalam dalam masa terdekat.

Alat pertanyaan Psql kini menyokong cawangan asas (jika/elif/else)

Sebagai contoh, perkara berikut akan membolehkan satu skrip penyelenggaraan/pemantauan dengan cawangan versi tertentu (dengan nama lajur yang berbeza untuk paparan pg_stat* dsb.) dan bukannya banyak skrip khusus versi.

SELECT :VERSION_NAME = '10.0' AS is_v10 \gset
\if :is_v10
SELECT 'yippee' AS msg;
\else
SELECT 'time to upgrade!' AS msg;
\endif
Salin selepas log masuk

Itu sahaja kali ini! Sudah tentu terdapat banyak perkara lain yang tidak disenaraikan, jadi untuk DBA yang berdedikasi, saya pasti akan mengesyorkan agar anda melihat rekod keluaran yang lebih komprehensif. Terima kasih banyak kepada 300+ orang yang menyumbang kepada keluaran ini!

Atas ialah kandungan terperinci DBA menemui masalah baharu dengan PostgreSQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apa yang sebenarnya Linux? Apa yang sebenarnya Linux? Apr 12, 2025 am 12:20 AM

Linux sesuai untuk pelayan, persekitaran pembangunan, dan sistem tertanam. 1. Sebagai sistem pengendalian pelayan, Linux stabil dan cekap, dan sering digunakan untuk menggunakan aplikasi konkurasi tinggi. 2. Sebagai persekitaran pembangunan, Linux menyediakan alat arahan dan sistem pengurusan pakej yang cekap untuk meningkatkan kecekapan pembangunan. 3. Dalam sistem tertanam, Linux ringan dan disesuaikan, sesuai untuk persekitaran dengan sumber yang terhad.

Apa yang Harus Dilakukan Sekiranya Pelabuhan Apache80 Diduduki Apa yang Harus Dilakukan Sekiranya Pelabuhan Apache80 Diduduki Apr 13, 2025 pm 01:24 PM

Apabila port Apache 80 diduduki, penyelesaiannya adalah seperti berikut: Cari proses yang menduduki pelabuhan dan tutupnya. Semak tetapan firewall untuk memastikan Apache tidak disekat. Jika kaedah di atas tidak berfungsi, sila buat semula Apache untuk menggunakan port yang berbeza. Mulakan semula perkhidmatan Apache.

Cara Memulakan Apache Cara Memulakan Apache Apr 13, 2025 pm 01:06 PM

Langkah-langkah untuk memulakan Apache adalah seperti berikut: Pasang Apache (perintah: sudo apt-get pemasangan apache2 atau muat turun dari laman web rasmi) Mula Apache (linux: Sudo Systemctl Mula Apache2; Windows: Klik kanan "Apache2.4" Perkhidmatan dan pilih "Mula") Boot secara automatik (Pilihan, Linux: Sudo Systemctl

Cara Memantau Prestasi SSL Nginx di Debian Cara Memantau Prestasi SSL Nginx di Debian Apr 12, 2025 pm 10:18 PM

Artikel ini menerangkan bagaimana untuk memantau prestasi SSL pelayan Nginx secara berkesan pada sistem Debian. Kami akan menggunakan NginXExporter untuk mengeksport data status nginx ke Prometheus dan kemudian memaparkannya secara visual melalui Grafana. Langkah 1: Mengkonfigurasi Nginx Pertama, kita perlu mengaktifkan modul Stub_status dalam fail konfigurasi Nginx untuk mendapatkan maklumat status nginx. Tambahkan coretan berikut dalam fail konfigurasi nginx anda (biasanya terletak di /etc/nginx/nginx.conf atau termasuk fail): lokasi/nginx_status {stub_status

Cara memulakan pemantauan oracle Cara memulakan pemantauan oracle Apr 12, 2025 am 06:00 AM

Langkah -langkah untuk memulakan pendengar oracle adalah seperti berikut: Periksa status pendengar (menggunakan arahan status lsnrctl) untuk Windows, mulakan perkhidmatan "TNS pendengar" dalam Pengurus Perkhidmatan Oracle untuk Linux dan Unix, gunakan arahan mula lsnrctl untuk memulakan pendengar untuk menjalankan arahan status lsnrctl untuk mengesahkan bahawa pendengar itu dimulakan

Cara Menyiapkan Bin Kitar Semula dalam Sistem Debian Cara Menyiapkan Bin Kitar Semula dalam Sistem Debian Apr 12, 2025 pm 10:51 PM

Artikel ini memperkenalkan dua kaedah mengkonfigurasi tong kitar semula dalam sistem Debian: antara muka grafik dan baris arahan. Kaedah 1: Gunakan antara muka grafik Nautilus untuk membuka Pengurus Fail: Cari dan mulakan Pengurus Fail Nautilus (biasanya dipanggil "Fail") dalam menu desktop atau aplikasi. Cari tong kitar semula: Cari folder bin kitar semula di bar navigasi kiri. Jika tidak dijumpai, cuba klik "Lokasi Lain" atau "Komputer" untuk mencari. Konfigurasikan Properties Bin Recycle: Klik kanan "Bin Kitar Semula" dan pilih "Properties". Dalam tetingkap Properties, anda boleh menyesuaikan tetapan berikut: Saiz maksimum: Hadkan ruang cakera yang terdapat dalam tong kitar semula. Masa pengekalan: Tetapkan pemeliharaan sebelum fail dipadamkan secara automatik di tong kitar semula

Cara memulakan semula pelayan Apache Cara memulakan semula pelayan Apache Apr 13, 2025 pm 01:12 PM

Untuk memulakan semula pelayan Apache, ikuti langkah -langkah ini: Linux/MacOS: Run Sudo SystemCtl Restart Apache2. Windows: Jalankan Net Stop Apache2.4 dan kemudian Net Start Apache2.4. Jalankan Netstat -A | Cari 80 untuk memeriksa status pelayan.

Cara Mengoptimumkan Prestasi Debian Readdir Cara Mengoptimumkan Prestasi Debian Readdir Apr 13, 2025 am 08:48 AM

Dalam sistem Debian, panggilan sistem Readdir digunakan untuk membaca kandungan direktori. Jika prestasinya tidak baik, cuba strategi pengoptimuman berikut: Memudahkan bilangan fail direktori: Split direktori besar ke dalam pelbagai direktori kecil sebanyak mungkin, mengurangkan bilangan item yang diproses setiap panggilan readdir. Dayakan Caching Kandungan Direktori: Bina mekanisme cache, kemas kini cache secara teratur atau apabila kandungan direktori berubah, dan mengurangkan panggilan kerap ke Readdir. Cafh memori (seperti memcached atau redis) atau cache tempatan (seperti fail atau pangkalan data) boleh dipertimbangkan. Mengamalkan struktur data yang cekap: Sekiranya anda melaksanakan traversal direktori sendiri, pilih struktur data yang lebih cekap (seperti jadual hash dan bukannya carian linear) untuk menyimpan dan mengakses maklumat direktori

See all articles