Centos 7 Mysql Kurulumu
Mysql yerini Mariadb’ye bıraktı (gerçi mysql 8 çıktı) ikisi de hemen hemen aynı aslında ama illa da mysql kullanacağım diyenler için kurulum centos depolarından yapılamıyor (artık yapılabiliyor aşağıdaki dipnot 1’e bakınız). Bunun için aşağıdaki linke girip mysql’in stabil versiyonlarından birinin linkini kopyalıyoruz. Arından linki rpm aracılığı ile sunucumuza kuruyoruz.
Mysql’in resmi sitesine girdiğimizde sırasıyla Download / Yum Repository kısmından sunucumuza uygun rpm paketini buluyoruz. Burada dikkat edilecek husus biz 64bit seçeceğiz. Centos’umuz 64bit çünkü. Linkini kopyalayacağımız paket şu:
Red Hat Enterprise Linux 7 / Oracle Linux 7 (Architecture Independent), RPM Package
Kopyaladığımız paket ismini şu komutla sunucumuza kuruyoruz.
1 | rpm -ivh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm |
Mysql’i depomuza ekledik. Şimdi yükleme kısmına geçebiliriz.
1 | yum install mysql-server |
Yukarıdaki komuttan sonra yaklaşık 200Mb’lık bir dosya indirip kuracak sistemimize, Yes diyerek devam edebiliriz.
Complete! yazısını gördüğünüz zaman işlem tamam demektir. Şimdi ayarlarına geçelim.
Dipnot 1
Yukarıda yazılanların hiçbirine gerekte olmayabilir. Yum deposundan da indirmek ve kurmak mümkün. Bunun için aşağıdaki komutları takip ediniz.
1 yum info mysql-community-serverYukarıdaki komutu girdiğinizde baktınız mysql var. 5.7.23 versiyonu olması lazım, 160 küsür MB civarında. Onu yükleyebilirsiniz.
1 yum install mysql-community-server
Dipnot 2
Mysql 2018 temmuz ayında mysql 8.0’ı duyurdu. Dediklerine göre mysql 5.7 versiyondan kat kat daha hızlı. Ancak şuan için kurulum erken diye düşünüyorum. Ancak yine de kurmak isterseniz aşağıdaki komut ile rpm’i indirim kurulum yapabilirsiniz.
wget https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm
Mysql’de bir servis, bu nedenle her açılışta çalışması lazım ki mysql’i kullanabilelim. Servisi enable edip start ediyoruz.
1 2 | systemctl enable mysqld systemctl start mysqld |
Yukardaki komutlarda da herhangi bir hata almadıysak, mysql çalışıyor demektir. Mysql ilk kurulduğunda geçici bir root şifresi oluşturur ve bunu kendi log dosyasına yazar. Geçici root şifresini öğrenmek için aşağıdaki komutu kullanıyoruz.
1 | cat /var/log/mysqld.log | grep password |
Bu komut sonrasında aşağıdaki gibi bir yazı çıkacaktır. Burada son satırdaki localhost: sonra başlayan kısım sizin geçici root şifreniz oluyor. Şifre: _e3dGApwk3W
1 | 2017-10-12T05:52:23.915864Z 1 [Note] A temporary password is generated for root@localhost: _e3dGApwk3W |
Şifreyi bir yere kaydediyoruz. Şimdi mysql’in ayarlarına devam edeceğiz.
1 | sudo mysql_secure_installation |
Yukardaki 2. komuttan sonra bize kaydettiğimiz şifreyi soruyor, yazıp devam ediyoruz. Ardından;
1 2 3 4 5 6 7 8 9 | New password: Yeni Şifre gireceğiz Re-enter new password: Yeni şifreyi tekrar gireceğiz Change the password for root ? ((Press y|Y for Yes, any other key for No) : Y Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y Remove test database and access to it? Y Reload privilege tables now? Y All done! |
Yukarıdaki ayarlardan kısaca bahsedecek olursak;
Yeni şifremizi girdik. İsimsiz girişleri kapattık, test veritabanını kaldırdık. Privilege tablosunu yeniledik.
All done yazısından sonra mysql kuruldu demektir. Verdiğiniz root şifresini unutmayın!
Not: Biz şimdi mysql 5.7 yüklüyoruz, mysql’de de versiyon farklılıklarına göre çeşitli sorunlar çıkabiliyor. Mesela Mysql 4 ile hazırladığınız bir veritabanı Mysql 5’de bazı uyumsuzluklar yapabiliyor. Bu uyumsuzluklar onlarca olabilir o nedenle sorunlarla karşılaştığınızda bunları kendiniz çözmeniz gerekecek. Bunun için en iyi yardımı internetten alabilirsiniz.
Sunucu üzerine hem mysql de hemde mariadb de kurulum yaptım. Her ikisinide kurmayı denedim fakat bir türlü phpmyadmin den giriş yapamadım. Ayrıca php ile db bağlantı kontrol ettiriyorum sonuç yine aynı. terminalden girişte hiç sıkıntı yok mysql -u root -p deyip şifreyi giriyorum hiç sıkıntı yok mysql in çalıştığınıda test ettim.
[root@centos~]# systemctl status mysqld
● mysqld.service – MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2019-07-25 06:05:09 UTC; 2h 4min ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 3433 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 3512 (mysqld)
Status: “Server is operational”
CGroup: /system.slice/mysqld.service
└─3512 /usr/sbin/mysqld
Jul 25 06:05:00 centos systemd[1]: Starting MySQL Server…
Jul 25 06:05:09 centos systemd[1]: Started MySQL Server.
zaman bulup yardım ederseniz çok sevinirim. telegram kullanıyorsanız adresim @fatihturk yoksa belirttiğim mail üzerinden dönüş yaparsanız çok makbule geçer.
phpmyadmin’e web üzerinden erişmeye çalıştığınızde ne gibi bir hata alıyorsunuz? nginx veya apache üzerinden phpmyadmin ayarlarınızı yaptınız mı? mysql sunucu üzerinde çalışıyor fakat phpmyadmin bağlanamıyor gibi. Detay verebilirseniz yardımcı olurum.