Blog / Makaleler

Linux Centos 7 için MySQL 8 kurulumu

Bu yazı 2020 yılından. Anlatılan sürümler, fiyatlar ve adresler o günden bu yana değişmiş olabilir.

Bu kurulum rehberinde dünya genelinde en çok kullanılan veritabanı yönetim sistemlerinden biri olan MySQL'ü ele alacağız.

Güncelleme (Kasım 2026): Bu yazıyı 2020'de yazmıştım. O günden beri CentOS 7'nin desteği bitti (Haziran 2024), depoları arşive taşındı ve MySQL deposunun imza anahtarı değişti; yani eski komutlar bugün olduğu gibi çalışmıyor, hatta en sonda anlatacağım bir GPG hatası veriyor. Yazıyı güncelledim ve MySQL'in güncel uzun destekli sürümü olan 8.4'e göre düzenledim.

Önce dağıtım seçimi

Yeni bir sunucu kuruyorsanız CentOS 7 kullanmayın, desteği bitti. Rocky Linux ya da AlmaLinux kurun; komutlar neredeyse birebir aynı. Aşağıda örnekleri bu güncel dağıtımların 9. sürümüne (EL9) göre veriyorum. Komutları sudo ile çalıştırın.

Elinizdeki sunucu hâlâ CentOS 7 ise, önce depo arşiv düzeltmesini yapın (yoksa yum komutları hata verir):

Terminal
sudo sed -i 's/^mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*.repo
sudo sed -i 's|^#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*.repo
sudo yum clean all

Ayrıca aşağıdaki komutlardaki el9 kısmını CentOS 7 için el7, EL8 için el8 yapın.

1. MySQL deposunu eklemek

MySQL'in kendi deposunu sunucumuza ekliyoruz:

Terminal
sudo dnf install -y https://dev.mysql.com/get/mysql84-community-release-el9-1.noarch.rpm

Komut "bulunamadı" hatası verirse, dosya adındaki sürüm numarası (-1) güncellenmiş olabilir. Güncel dosya adını dev.mysql.com/downloads/repo/yum adresinden alabilirsiniz.

2. İmza anahtarını içeri almak (önemli)

MySQL'in paketleri imzaladığı eski anahtarın süresi 2022'de doldu. Bu yüzden kuruluma geçmeden önce güncel (2023) anahtarı içeri almanız gerekiyor, yoksa kurulumun sonunda "GPG check FAILED" hatası alırsınız:

Terminal
sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023

Eski yazıda bu adım yoktu çünkü o zaman anahtarın süresi dolmamıştı. Bugün bu adımı atlarsanız kurulum yarıda kalır.

3. MySQL Server'ı kurmak

Terminal
sudo dnf install -y mysql-community-server

4. Servisi başlatmak

Eski yazıdaki service mysqld start ve chkconfig komutları artık kullanılmıyor, yerlerine systemctl geçti. Hem başlatıp hem de sunucu açılışında otomatik başlamasını tek komutla ayarlıyoruz:

Terminal
sudo systemctl enable --now mysqld

5. Geçici root parolasını bulmak

MySQL ilk kurulduğunda root kullanıcısı için geçici bir parola üretir. Bir sonraki adımda lazım olacağı için bu parolayı öğrenelim:

Terminal
sudo grep "A temporary password" /var/log/mysqld.log

Karşınıza şöyle bir satır çıkar (sondaki parola sizde farklı olur):

Kod
[Note] [MY-010454] A temporary password is generated for root@localhost: xcasdLqrl4+u512

6. Güvenli kuruluma geçmek

MySQL'i güvenli hale getiren sihirbazı çalıştırıyoruz:

Terminal
sudo mysql_secure_installation

Önce az önce bulduğumuz geçici parolayı girer, ardından yeni bir root parolası belirlersiniz:

Kod
The existing password for the user account root has expired. Please set a new password.

New password:
Re-enter new password:

Yeni parolayı iki kez girdikten sonra sihirbaz birkaç güvenlik sorusu sorar (anonim kullanıcıyı sil, uzaktan root girişini kapat gibi). Bunların hepsine Y diyerek devam edebilirsiniz; bu ayarlar sunucunuzu daha güvenli yapar.

MySQL 8.4'ün belirlediğiniz parolada en az bir büyük harf, bir rakam ve bir özel karakter aradığını unutmayın, yoksa parolayı kabul etmez.

Bilmeniz gerekenler

MySQL'e komut satırından bağlanmak için:

Terminal
mysql -u root -p

Parolanızı girdikten sonra MySQL komut satırına düşersiniz. Mevcut veritabanlarını listelemek için (komutların sonundaki noktalı virgül önemli):

SQL
SHOW DATABASES;

Çıkmak için exit yazmanız yeterli.

Bu yazıyı paylaşXFacebook