Mysql server kurulumu ve ayarları (Ayrı mysql sunucusu)

Mysql server’i kurarak ana sunucunuza gelen yükü %70 azaltabilirsiniz. Mysql veritabanı kullanan sistemlerin çoğunda kullanım ağırlığı genelde mysql üzerinde oluyor. Bunu dikkate aldığımızda mysql programını ayrı bir serverda barındırmakda mantıklı hale geliyor.

Bu konuda basit şekilde centos 6.x bir sunucuya mysql kurup çalıştıracağız. Gerekli izinleri vererek sadece belli İP adreslerinin kullanımına açacağız ve ana sunucularımızdan bu mysql sunucularına bağlantıyı sağlayacağız.

Mysql kuralım:

Siz daha önceden kurulumu yapmışsanız, bu aşamayı geçebilirsiniz:

yum -y install mysql mysql-server php-mysql

mysql yi acilis programlarina ekleyelim:

chkconfig mysqld on

Mysql baslatalim:

service mysqld restart

Mysql guvenlik ayarlarini yapalim:

mysql_secure_installation

Ardindan cikan ekranda sirasiyla asagidaki islemleri yapalim:

1 – # Mevcut mysql sifresini girin, yeni kuruyorsaniz sifre yoktur, enter yapin gecin, varsada sifreyi yazin:

Enter current password for root (enter for none):

2 – Sifre degismek istermisiniz diye soracak, sifre kullanmiyorsaniz degistirmenizi oneririm:

Sirasiyla:

  1. Evet icin y harfine basip enter yapin
  2. Yeni sifrenizi girin
  3. Sifrenizi tekrar girin
Change the root password? [Y/n] y
New password:
Re-enter new password:

Sonrasindaki cikan ayarlar standart hepsine y (evet) diyerek cevaplayin.

Remove anonymous users? [Y/n]
Disallow root login remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n]

Sonrasinda asagidaki gibi bir mesaj cikacak ve mysql kurulumu tamamlanmis olacak:

Thanks for using MySQL!

Mysql giris yapmak istediginizde asagidaki parametre ile calisabilirsiniz:

mysql -u root -p

Mysql portunu acalim ve belirli IPlere izin verelim:

Belirli iplere izin vererek mysql guvenliginizi artirabilirsiniz. Bunun icin asagidaki sekilde yapilanlari uygulayin.

nano /etc/sysconfig/iptables

COMMIT kelimesinden uste asagidaki kodu ekleyin:

-A INPUT -s 77.48.155.154/32 -i eth0 -p tcp -m tcp --dport 3306 -j ACCEPT

Bu sekilde bir kullanim ile mysql portu olan :3306 portuna sadece bu ip adresinden istek gelirse cevap verilecek demek oluyor: 77.48.155.154

Dosyayi kapatmak icin ctrl + x, y enter, enter yaptiginizda kaydedip cikacak. Bunun akabinde ayarlarin aktif olmasi ve porton acilmasi icin iptables programina restart atalim.

service iptables restart

* Guncelleme: 03/06/2016

Ayri olarak /etc/my.cnf dosyasinda da bir kac degisiklik yapmak gerekecek.

/etc/my.cnf dosyasini duzenleme uygulamasi ile acin ve icerisindeki ‘skip-networking’ ayarinin basina # isaretini koyun, asagidaki gibi olacak:

#skip-networking

Asagidaki ayarida varsa ekleyin:

symbolic-links=0

Ornek my.cnf dosyasi bu sekilde olmali.

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# skip-networking
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address            = 81.91.111.111

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

UYARI: ornek ayar dosyasindaki datadir, socket, log-error, pid-file ayari sizin sunucuzda farkli olabilir, eger bunlar hata verirse o ayarlarin basina # isareti koyarak etkisizlestirin.3

Sonrasinda mysql sunucumuza restart atalim ve ayarlari onaylayalim.

service mysqld restart

Mysql veritabani ve kullanici hesabi olusturalim

Ayrica bu veritabani ile kullanici hesabini birbirine baglayalim:

mysql -u root -p

Mysql sifrenizi girin ve enter yapin, mysql ekraninda olacaksiniz, sirasi ile asagidaki islemleri kendinize gore degistirerek yapin:

	CREATE DATABASE test_veritabani;
	GRANT USAGE ON test_veritabani.* to [email protected] IDENTIFIED BY 'KULLANICI_SIFRE';
	GRANT ALL ON test_veritabani.* to [email protected] ;
	flush privileges;

Bu islemlerin ardindan mysql veritabanina belirlediginiz DIS IP adresinden baglanti saglayabileceksiniz. Mysql baglantisi yaparken localhost yerine mysql server IP sini girmeniz yeterli. Daha hizli bir baglanti icin ip adresinin sonuna mysql portunuda ekleyebilirsiniz :3306

Bazi kisimlari kafamdan yazdim, hata ile karsilasirsaniz yazarsiniz arkadaslar, o yonde makaleyi guncellerim.

2 YORUMLAR

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz

This site uses Akismet to reduce spam. Learn how your comment data is processed.