Press ESC to close

Ubuntu Üstünde MySQL Kurulumu ve Yönetimi

İçindekiler

MySQL Kurulumu

Ubuntu işletim sistemi, özellikle sunucu ortamlarında en çok tercih edilen Linux dağıtımlarından biridir. Güçlü ve esnek yapısı sayesinde, birçok veritabanı yönetim sistemiyle uyumlu çalışabilir.

Bu rehberde, Ubuntu üzerinde MySQL veritabanı sunucusunun nasıl kurulacağı ve yönetileceği hakkında adım adım bilgiler sunacağız. İster yeni başlayan bir kullanıcı olun ister tecrübeli bir sistem yöneticisi, bu yazı dizimizdeki açıklamalarla MySQL kurulumu ve yönetimi konusunda kendinizi daha donanımlı hissedeceksiniz.

MySQL kurulumu için ilk adım, terminali açmak ve aşağıdaki komutu çalıştırmaktır:

				
					sudo apt update -y
				
			

Bu komut, paket listelerini güncelleyecek ve sisteminizi en son sürümler için hazırlayacaktır. Ardından, MySQL paketlerini kurmak için:

				
					sudo apt install mysql-server -y
				
			

komutunu kullanabilirsiniz. Kurulum sırasında, root kullanıcısı için bir şifre belirlemeniz istenebilir. Güvenli bir şifre seçtiğinizden emin olun.

Kurulum tamamlandığında, MySQL servisinin aktif olup olmadığını kontrol etmek için:

				
					sudo systemctl status mysql.service
				
			

komutunu kullanabilirsiniz. Eğer servis aktif değilse, başlatmak için:

				
					sudo systemctl start mysql.service
				
			

komutunu çalıştırın.

MySQL sunucusunu kurduktan sonra, güvenlik ve kullanım kolaylığı için bazı yapılandırma ayarlarını yapmanız önerilir. Bu ayarları yapmak için terminalde şu komutu çalıştırabilirsiniz:

				
					sudo mysql_secure_installation
				
			

Bu betik, root şifresini güçlendirmeniz, anonim kullanıcıları kaldırmanız, uzaktan root kullanıcı girişini devre dışı bırakmanız ve test veritabanını silmeniz gibi bir dizi güvenlik önlemi sunar. Her adımda size yönlendirmeler yapılacak ve tercihlerinize göre ayarlamaları yapabileceksiniz.

MySQL Kullanıcı ve Veritabanı Oluşturma

MySQL’de yeni bir kullanıcı ile veritabanı oluşturmak ve bu kullanıcıya izinler atamak için MySQL komut satırını kullanabilirsiniz. Öncelikle, MySQL’e giriş yapın:

				
					sudo mysql -u root -p
				
			

Ardından yeni bir kullanıcı oluşturmak için:

				
					CREATE USER 'kullanici_adi'@'localhost' IDENTIFIED BY 'guclu_sifre';
				
			

komutunu kullanın. Burada ‘kullanici_adi‘ ve ‘guclu_sifre‘ kısımlarını kendi belirlediğiniz kullanıcı adı ve şifre ile değiştirin. 

Yeni bir veritabanı oluşturmak için:

				
					CREATE DATABASE veritabani_adi;
				
			

Kullanıcıya veritabanı izni atamak için:

				
					GRANT ALL PRIVILEGES ON veritabani_adi.* TO 'kullanici_adi'@'localhost';
				
			

MySQL güvenliğini sağlamak için almanız gereken önlemler arasında şifre politikaları, ağ güvenliği ve düzenli yedeklemeler bulunmaktadır. Örneğin, güçlü şifreler kullanmak ve düzenli olarak şifreleri değiştirmek, güvenlik için önemli adımlardır. Ayrıca, veritabanınıza sadece güvenilir ağlardan erişime izin vermek ve gereksiz MySQL kullanıcılarını silmek de güvenliği artırmanın yollarındandır.

MySQL Yapılandırma Ayarları

MySQL sunucusunu başarıyla kurduktan sonra, performans ve güvenlik için bazı temel yapılandırma ayarlarını yapmanız gerekecektir. Bu ayarlar, MySQL’in verimli bir şekilde çalışmasını sağlamanın yanı sıra, veritabanınızın güvenliğini de artıracaktır. Şimdi, MySQL yapılandırma ayarlarını nasıl yapacağınızı adım adım inceleyelim.

İlk olarak, MySQL yapılandırma dosyasını düzenleyeceğiz. Bu dosya genellikle /etc/mysql/my.cnf veya /etc/mysql/mysql.conf.d/mysqld.cnf konumunda bulunur. Terminal üzerinden aşağıdaki komut ile yapılandırma dosyasını açabilirsiniz:

				
					sudo apt-get install -y nano
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
				
			

Yapılandırma dosyasında yapmanız gereken önemli ayarlar şunlardır:

  • bind-address: MySQL sunucusunun hangi IP adresinden erişilebileceğini belirler. Genellikle güvenlik nedeniyle yalnızca yerel makineden erişime izin vermek için 127.0.0.1 olarak ayarlanır.
  • max_connections: Aynı anda sunucuya bağlanabilecek maksimum istemci sayısını belirler. İhtiyacınıza göre bu değeri artırabilir veya azaltabilirsiniz.
  • character-set-server ve collation-server: Veritabanının karakter seti ve karşılaştırma düzenini belirler. Genellikle utf8 ve utf8_general_ci olarak ayarlanır.

Aşağıda, yapılandırma dosyasında yapmanız gereken bazı temel ayarların örnek bir tablosunu bulabilirsiniz:

AyarAçıklamaÖrnek Değer
bind-addressMySQL sunucusunun hangi IP adresinden erişilebileceğini belirtir.127.0.0.1
max_connectionsAynı anda sunucuya bağlanabilecek maksimum istemci sayısını belirtir.151
character-set-serverVeritabanının karakter setini belirtir.utf8
collation-serverVeritabanının karşılaştırma düzenini belirtir.utf8_general_ci

Ayarları yaptıktan sonra, yapılandırma dosyasını kaydedip kapattığınızdan emin olun. Değişikliklerin etkili olabilmesi için MySQL sunucusunu yeniden başlatmanız gerekecek. Aşağıdaki komutu kullanarak sunucuyu yeniden başlatabilirsiniz:

				
					sudo systemctl restart mysql
				
			

Yapılandırma ayarlarınızı doğru bir şekilde yapmak, MySQL sunucunuzun sağlıklı ve güvenli bir şekilde çalışmasını sağlayacaktır. Unutmayın, bu ayarlar sadece başlangıç için önerilenlerdir. Sisteminizin ihtiyaçlarına göre daha ileri düzey yapılandırmalar yapmanız gerekebilir.

MySQL Güvenlik Önlemleri

MySQL veritabanı sunucunuzun güvenliğini sağlamak, siber saldırılara karşı korunmanın ilk adımıdır. Bu bölümde, MySQL sunucunuz için uygulayabileceğiniz güvenlik önlemlerine değineceğiz.

İlk olarak, root kullanıcısı için şifre belirlemeniz gerekmektedir. Kurulum sırasında atanmış olan varsayılan şifreyi değiştirmek, olası izinsiz erişimleri engeller. Bunun için aşağıdaki komutu kullanabilirsiniz:

				
					sudo mysql_secure_installation

				
			

İkinci olarak, anonim kullanıcıları kaldırın. Anonim kullanıcılar, kimlik doğrulaması olmadan veritabanınıza erişebilir. Bu kullanıcıları kaldırmak için MySQL komut satırına aşağıdaki komutları girin:

				
					DELETE FROM mysql.user WHERE User'';
FLUSH PRIVILEGES;
				
			

Üçüncü adım olarak, uzaktan root erişimini devre dışı bırakın. Root kullanıcısının uzaktan erişimini kısıtlamak, güvenliği artırır. Bunu yapmak için aşağıdaki SQL komutunu kullanın:

				
					UPDATE mysql.user SET Host'localhost' WHERE User'root';
FLUSH PRIVILEGES;
				
			

Dördüncü olarak, gerekli olmayan varsayılan veritabanlarını kaldırın. Test veritabanı gibi varsayılan veritabanları güvenlik açıkları oluşturabilir. Bu veritabanlarını silmek için şu komutları kullanın:

				
					DROP DATABASE test;
FLUSH PRIVILEGES;
				
			

Beşinci adım, veritabanı izinlerini sıkılaştırın. Kullanıcıların yalnızca gerekli izinlere sahip olmasını sağlayın. Örneğin, bir kullanıcıya veritabanı oluşturma izni vermek için şu komutu kullanabilirsiniz:

				
					GRANT CREATE ON *.* TO 'kullanici_adi'@'localhost';

				
			

Altıncı olarak, veritabanınızı düzenli olarak yedekleyin. Olası bir veri kaybı durumunda, verilerinizi hızlıca geri yükleyebilirsiniz. Yedekleme için çeşitli araçlar ve komutlar kullanılabilir.

Yedinci adım, veritabanı sunucunuzu güncel tutun. Güvenlik yamalarını ve güncellemeleri düzenli olarak uygulayarak, bilinen güvenlik açıklarını kapatın.

Son olarak, güçlü şifre politikaları uygulayın ve kullanıcı şifrelerinin düzenli olarak değiştirilmesini sağlayın. Şifrelerin karmaşık ve tahmin edilmesi zor olmasına özen gösterin.

Yukarıda belirtilen adımların yanı sıra, güvenlik duvarı kuralları, şifrelenmiş bağlantılar gibi ek güvenlik önlemlerini de göz önünde bulundurmanız önemlidir. MySQL güvenliği, sürekli bir süreçtir ve düzenli olarak gözden geçirilmelidir.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir