Seringkali saya mengalami situasi ketika saya harus memutuskan koneksi di server MySQL – misalnya, ratusan contoh dari beberapa kueri buruk sedang berjalan, membuat server tidak dapat digunakan. Banyak orang memiliki skrip khusus yang dapat menjadikan pengguna, host sumber, atau kueri sebagai parameter dan melakukan tindakan. Ada juga cara melakukannya hanya dengan menggunakan MySQL dengan beberapa perintah Show
1 2 3 4 5 6 7 8 9 10 11 12 13 14 mysql> pilih concat('KILL ',id,';') from information_schema.processlist di mana pengguna = 'root'; +------------------------+ . concat('KILL ',id,';') | +------------------------+ . BUNUH 3101; . . BUNUH 2946; . +------------------------+ 2 baris di set (0.00 dtk)
mysql> pilih concat('KILL ',id,';') from information_schema.processlist di mana pengguna = 'root' into outfile '/tmp/a.txt'; Kueri OK, 2 baris affected (0.00 dtk)
mysql> sumber / tmp/a.txt; Kueri OK, 0 baris affected (0.00 dtk) Secara umum, ini adalah pendekatan yang sangat kuat yang saya gunakan dalam banyak kasus untuk membuat satu set pernyataan SQL dengan kueri SQL dan kemudian menjalankannya Alangkah baiknya dan bersih jika MySQL memiliki beberapa cara untuk "eval" - jalankan kumpulan hasil kueri sebagai perintah SQL. Ini akan menghindari persyaratan untuk menggunakan file sementara dll Dalam beberapa kasus saat menjalankan MySQL di Amazon RDS (atau di tempat lain), mungkin perlu untuk Kesalahan Apa yang Dilakukan Pembilasan Host?Dengan pengguna MySQL dengan hak istimewa yang tepat mengeksekusi pernyataan 0, MySQL akan mengosongkan cache host, yang secara efektif berarti catatan MySQL tentang host mana yang saat ini atau baru saja terhubung akan diatur ulang, memungkinkan koneksi lebih lanjut dari host tersebutMenjalankan FLUSH HOST Secara LangsungMeskipun mungkin Anda benar-benar dicegah untuk terhubung ke MySQL, dalam beberapa kasus sistem mungkin akan "menyimpan" slot koneksi yang hanya tersedia untuk akun utama atau 1Untuk 2, nama pengguna ini biasanya ditemukan di konsol manajemen Anda sebagai default atau "Master". Coba sambungkan ke server MySQL Anda dengan nama pengguna utama iniJika Anda dapat terhubung, membersihkan host Anda semudah menjalankan pernyataan MySQL 0 _Anda sekarang seharusnya telah menghapus kesalahan Pembilasan Host dari Jarak Jauh Menggunakan MySQLAdminJika Anda tidak dapat terhubung ke MySQL sebagai akun utama dan masih menerima kesalahan 5, opsi selanjutnya adalah menyambung ke server dari jarak jauh dan menjalankan perintah 6 menggunakan alat 7Untuk melakukan ini, Anda harus terhubung ke instans atau server EC2 lain yang memiliki akses ke server RDS yang menghasilkan kesalahan Setelah terhubung, jalankan perintah berikut dengan opsi yang tepat diganti antara 8
Jika berhasil, perintah _9 akan dieksekusi seperti yang diharapkan dan sekarang Anda dapat terhubung ke MySQL seperti biasaMem-boot ulang Instans RDSOpsi terakhir, jika semuanya gagal, cukup masuk ke panel kontrol manajemen RDS dan mulai ulang secara manual instans RDS yang memberikan kesalahan. Ini secara efektif akan mengatur ulang Bagaimana cara memperbaiki terlalu banyak koneksi di MySQL?Solusi . Identifikasi nilai variabel max_connections. mysql --user="root" --password="PASSWORD" --execute='TAMPILKAN VARIABEL SEPERTI "max_connections";. Gunakan editor teks favorit Anda untuk mengubah /etc/mysql/my. cnf dan tetapkan nilai berikut. max_connections = 500. . Mulai ulang layanan MySQL dan untuk menerapkan perubahan Apa arti flush di MySQL?FLUSH LOG. Menutup dan membuka kembali semua file log yang ditulis oleh server . Operasi ini memerlukan hak istimewa RELOAD. Efek dari operasi ini setara dengan efek gabungan dari operasi ini. FLUSH BINARY LOG FLUSH ENGINE LOG FLUSH ERROR LOG FLUSH UMUM LOG FLUSH RELAY LOG FLUSH SLOW LOG.
Bagaimana cara mematikan server MySQL?Hentikan Server MySQL . PENTING. Jangan hentikan server MySQL jika sisa aplikasi STA sedang berjalan Buka sesi terminal di server STA, dan masuk sebagai pengguna Oracle Hentikan server MySQL. $ STA hentikan mysql Pastikan server tidak berjalan. $ STA status mysql. Anda harus melihat. mysql dimatikan Bagaimana cara saya memeriksa terlalu banyak koneksi di MySQL?Untuk memeriksa jumlah max_connections saat ini, masuklah ke klien baris perintah MySQL/MariaDB dengan perintah berikut. . mysql -u akar -p TAMPILKAN variabel; sudo nano /etc/my. cnf [mysqld] max_connections=[jumlah maksimum baru yang diinginkan] [mysqld] max_connections=200 mysql -u akar -p |