Size bu yazımda Ssh üzerinden mysql ile yapılabilen işlemleri anlatacağım.
Ssh ile mysql sunucusuna bağlanmak
Aşağıdaki komutu girdiğinizde sizden mysql root şifrenizi isteyecektir. Bağlanabilmeniz için mysql şifrenizi girmeniz gerekir.
mysql -u root -p
Ssh ile Mysql kullanıcısı oluşturma
CREATE USER ‘kullanici_adi‘@’%’ IDENTIFIED BY ‘sifre‘;
FLUSH PRIVILEGES;
Ssh ile mysql veritabanı oluşturma
CREATE DATABASE db-isminiz-buraya;
FLUSH PRIVILEGES;
Ssh ile mysql veri tabanına kullanıcı yetkisi verme
bu örnekte % kullanıldığı için kullanıcıya ait şifreyi bilen tüm kullanıcılar veri tabanına erişim yapabilir. Kısıtlamak için % yerine bir ip adresi yazabirsiniz.
GRANT ALL ON veritabani.* TO ‘veritabanı_kullanıcı‘@’%’;
FLUSH PRIVILEGES;
ssh ile Veri tabanı kullanıcısına veri tabanı için farklı yetkiler verme
GRANT SELECT,INSERT,UPDATE,DELETE ON database_name.* TO ‘kullanici_adi’@’localhost′;
FLUSH PRIVILEGES;
Ssh ile veri tabanı kullanıcısına ait tüm yetkileri kaldırmak için
REVOKE ALL ON *.* TO ”kullanici_adi’@’%’;
FLUSH PRIVILEGES;
ssh ile veri tabanına ait sadece belirli bir yetkiyi kaldırmak
REVOKE INSERT ON *.* TO ”kullanici_adi’@’%’;
FLUSH PRIVILEGES;
ssh ile veri tabanı kullanıcısı silmek
DROP USER kullanici_adi;
FLUSH PRIVILEGES;
Önemli Not : ssh ile mysql kullanıcı yetkisi verirken % işaretini kullanmanız bu kullanıcıya şifresini bilen tüm ip adreslerinden bağlantı sağlanabileceği anlamına gelir. % yerine ip adresi kullandığınızda sadece belirlediğiniz ip adresinden bağlanılabilir.
Mesela örnek olarak bir kullanıcı oluşturalım , kullanıcıya tüm ip adresleri bağlanabilsin ve sunucudaki tüm veri tabanlarına ulaşabilsin.
CREATE USER ‘kullanici_adi‘@’%’ IDENTIFIED BY ‘sifre‘;
GRANT ALL ON *.* TO ‘olusturdugunuz_kullanıcı‘@’%’;
işleminiz bittiğinde FLUSH PRIVILEGES; kullanarak yaptığınız değişikliği veya işlemi aktif hale getirebilirsiniz.