Ubuntu Üzerinde MySQL Kurulumu ve Güvenlik Yapılandırması (Adım Adım)
Bu rehberde ne öğreneceksiniz?
Bu rehberde Ubuntu 20.04 ve üzeri sistemlerde MySQL 8.0 kurulumu,
auth_socket kimlik doğrulama sorununun çözümü,
güvenlik yapılandırması ve özel kullanıcı oluşturma adımlarını öğreneceksiniz.
🧠 Teknik Özet
Konu: Ubuntu üzerinde MySQL 8.0 kurulumu ve güvenli hale getirilmesi
Problem: Varsayılan MySQL kurulumunun güvenli olmaması ve auth_socket döngü hatası
Adımlar: Kurulum → Güvenlik → Kullanıcı oluşturma → Yetkilendirme → Test
MySQL Nedir?
MySQL, açık kaynaklı bir ilişkisel veritabanı yönetim sistemidir.
LAMP mimarisinin en temel bileşenlerinden biridir.
Ön Koşullar
- Ubuntu 20.04 veya üzeri
sudoyetkisine sahip kullanıcı- UFW güvenlik duvarı yapılandırılmış olmalı
1. MySQL Kurulumu
Paket listesini güncelleyin
sudo apt update
- Bu komut, sistem paket listesini günceller.
MySQL Server kurun
sudo apt install mysql-server
- Bu komut MySQL 8.0 paketini kurar.
Servisi başlatın
sudo systemctl start mysql.service
- Bu komut MySQL servisini çalıştırır.
2. MySQL Güvenlik Yapılandırması
- Ubuntu üzerinde MySQL root kullanıcısı varsayılan olarak auth_socket ile doğrulanır.
- Bu durum mysql_secure_installation sırasında hata döngüsüne neden olabilir.
Hata döngüsünü önleme
- MySQL konsoluna girin
sudo mysql
- Root kullanıcıyı geçici olarak parola ile ayarlayın
ALTER USER 'root'@'localhost'
IDENTIFIED WITH mysql_native_password BY 'GeciciGucluSifre';
Çıkış yapın
exit
Güvenlik sihirbazını çalıştırın
sudo mysql_secure_installation
Önerilen seçimler:
-
Validate Password Plugin → Y
-
Password Policy → STRONG
-
Anonymous users → Remove
-
Remote root login → Disable
-
Test database → Remove
-
Reload privileges → Yes
Root doğrulamasını geri alma (Önerilen)
- Root ile parola kullanarak giriş yapın
mysql -u root -p
- auth_socket yöntemine geri dönün
ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;
exit
- Bu sayede tekrar sudo mysql ile giriş yapılabilir.
3. Özel MySQL Kullanıcısı Oluşturma
- Root kullanıcısını uygulamalarda kullanmanız önerilmez.
- MySQL konsolunu açın
sudo mysql
- Yeni kullanıcı oluşturun
CREATE USER 'rabisu_admin'@'localhost'
IDENTIFIED BY 'GucluBirSifre!';
- Yetki verin
GRANT ALL PRIVILEGES ON *.*
TO 'rabisu_admin'@'localhost' WITH GRANT OPTION;
- Not: Prodüksiyonda yalnızca gerekli izinleri vermek daha güvenlidir.
- Yetkileri güncelleyin
FLUSH PRIVILEGES;
exit
4. Kurulumu Test Etme
- Servis durumunu kontrol edin
systemctl status mysql.service
- Durum active (running) olmalıdır.
Kullanıcı ile giriş testi
mysql -u rabisu_admin -p
- Versiyon kontrolü
sudo mysqladmin -u rabisu_admin -p version
Sıkça Sorulan Sorular (SSS)
1. MySQL neden auth_socket kullanıyor? Ubuntu, root erişimini sistem kullanıcılarıyla eşlemek için bunu tercih eder.
2. MariaDB mi MySQL mi? MariaDB topluluk odaklıdır, MySQL daha geniş kurumsal ekosisteme sahiptir.
3. MySQL servisi açılmıyor, ne yapmalıyım? /var/log/mysql/error.log dosyasını kontrol edin.
4. MySQL’i tamamen kaldırmak istersem?
sudo apt purge mysql-server mysql-client mysql-common
Sonuç
Bu rehberle Ubuntu üzerinde güvenli, kararlı ve prodüksiyona hazır bir MySQL kurulumu gerçekleştirdiniz.
Daha yüksek performans ve ölçeklenebilirlik için Rabisu Bulut altyapısında MySQL uyumlu VDS çözümlerini hemen deneyebilirsiniz.