MariaDB Kurulumu ve MySQL’den Geçiş: AlmaLinux 9
AlmaLinux 9 ve Ubuntu üzerinde MariaDB kurulumu ile MySQL'den geçiş adımları. Güvenli kurulum ve performans ayarları.
MariaDB Nedir?
MariaDB, MySQL veritabanı sisteminin topluluk destekli açık kaynak bir forkudur. 2009 yılında MySQL'in Sun Microsystems tarafından satın alınmasının ardından, MySQL'in orijinal geliştiricisi Monty Widenius tarafından hayata geçirilmiştir. MySQL ile yüksek uyumluluk sağlayan MariaDB, aynı sorgu dilini (SQL), aynı protokolü ve aynı istemci kütüphanelerini kullanır; bu sayede mevcut MySQL uygulamaları çoğunlukla hiç değişiklik yapılmadan MariaDB üzerinde çalışır.
MariaDB'nin MySQL'e göre çeşitli avantajları vardır: Aria ve ColumnStore gibi ek depolama motorları, daha iyi performans optimizasyonları, gelişmiş replikasyon özellikleri ve tamamen açık kaynak lisansı (GPL). Bu nedenle birçok Linux dağıtımı (Debian, Ubuntu, AlmaLinux) paket depolarında varsayılan veritabanı olarak MariaDB'yi kullanmaktadır.
Temel Özellikler
- MySQL ile tam uyumluluk – aynı SQL sözdizimi, protokol ve API
- InnoDB yerine Aria storage engine desteği
- Galera Cluster ile çok yönlü replikasyon
- JSON veri tipi ve dinamik kolonlar
- Window Functions ve Common Table Expressions (CTE)
- Aktif topluluk ve sık güvenlik güncellemeleri
Sistem Gereksinimleri
- İşletim Sistemi: AlmaLinux 8/9, Ubuntu 20.04/22.04/24.04, Debian 11/12
- Minimum RAM: 512 MB (önerilen 1 GB)
- Disk: Veri boyutuna göre değişir (minimum 5 GB)
İşletim Sistemine Göre Kurulum
🔵 AlmaLinux 9 Üzerinde MariaDB Kurulumu
# MariaDB resmi deposunu ekle (AlmaLinux 9 için 10.11 LTS önerilen)
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | \
bash -s -- --mariadb-server-version="mariadb-10.11"
# Yükle
dnf install -y MariaDB-server MariaDB-client
# Servisi başlat ve otomatik başlatmayı etkinleştir
systemctl enable --now mariadb
# Güvenli kurulum sihirbazını çalıştır
mariadb-secure-installation
mariadb-secure-installation sihirbazı şunları yapılandırır:
- Root şifresi belirleme
- Anonim kullanıcıları kaldırma
- Remote root girişini devre dışı bırakma
- Test veritabanını kaldırma
🟠 Ubuntu/Debian Üzerinde MariaDB Kurulumu
apt update
apt install -y mariadb-server mariadb-client
systemctl enable --now mariadb
mariadb-secure-installation
Kurulum Sonrası Yapılandırma
Yeni Veritabanı ve Kullanıcı Oluşturma
mariadb -u root -p
CREATE DATABASE uygulama_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'uyg_kullanici'@'localhost' IDENTIFIED BY 'GuvenliSifre123!';
GRANT ALL PRIVILEGES ON uygulama_db.* TO 'uyg_kullanici'@'localhost';
FLUSH PRIVILEGES;
EXIT;
my.cnf Performans Ayarları
# /etc/my.cnf.d/server.cnf veya /etc/mysql/mariadb.conf.d/50-server.cnf
[mysqld]
innodb_buffer_pool_size = 256M # Sunucu RAM'inin %70'i
innodb_log_file_size = 64M
max_connections = 150
query_cache_size = 0 # MariaDB 10.4+ kapatılmalı
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
MySQL'den MariaDB'ye Geçiş
Adım 1: MySQL Veritabanını Yedekle
mysqldump -u root -p --all-databases --single-transaction \
--routines --triggers > /root/mysql_yedek_$(date +%Y%m%d).sql
Adım 2: MySQL'i Kaldır
# Ubuntu/Debian
apt remove --purge mysql-server mysql-client mysql-common
apt autoremove
# AlmaLinux/CentOS
dnf remove mysql-server mysql
Adım 3: MariaDB'yi Kur
Yukarıdaki kurulum adımlarını uygulayın.
Adım 4: Yedeği Geri Yükle
mariadb -u root -p < /root/mysql_yedek_YYYYMMDD.sql
Adım 5: Uygulamayı Test Et
mariadb -u uyg_kullanici -p uygulama_db -e "SHOW TABLES;"
Sık Karşılaşılan Sorunlar
- Access denied hatası:
FLUSH PRIVILEGES;komutunu çalıştırın. - Servis başlamıyor:
journalctl -u mariadb -n 50ile log inceleyin. Genellikle /var/lib/mysql izin sorunudur:chown -R mysql:mysql /var/lib/mysql - Karakter seti sorunu: Uygulama bağlantı dizesine
charset=utf8mb4ekleyin. - Too many connections:
max_connectionsdeğerini artırın ve bağlantı havuzu kullanın.
İlgili Makaleler
Yorumlar
Henüz yorum yok. İlk yorumu siz yapın!