{"id":191,"title":"SQL Notlar\u0131: Kullan\u0131c\u0131 Y\u00f6netimi ve \u015eifre De\u011fi\u015ftirme","content":"<p>### MySQL'de Kullan\u0131c\u0131 Y\u00f6netimi ve \u015eifre De\u011fi\u015ftirme<\/p><p>MySQL, kullan\u0131c\u0131 hesaplar\u0131n\u0131 y\u00f6netmek ve \u015fifreleri de\u011fi\u015ftirmek i\u00e7in \u00e7e\u015fitli komutlar sunar. Bu yaz\u0131da, **yeni kullan\u0131c\u0131 olu\u015fturma**, **\u015fifre de\u011fi\u015ftirme** ve **g\u00fcvenlik \u00f6nlemleri** ile ilgili temel bilgileri ve kullan\u0131m \u00f6rneklerini ele alaca\u011f\u0131z.<\/p><p>---<\/p><p>### Yeni Kullan\u0131c\u0131 Olu\u015fturma<\/p><p>MySQL'de yeni bir kullan\u0131c\u0131 olu\u015fturmak ve bu kullan\u0131c\u0131ya yetkiler vermek olduk\u00e7a kolayd\u0131r.<\/p><p>#### Temel Kullan\u0131c\u0131 Olu\u015fturma<br>Yeni bir kullan\u0131c\u0131 olu\u015fturmak i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabilirsiniz:<\/p><p>```sql<br>CREATE USER 'my_new_user'@'localhost' IDENTIFIED BY 'test_password';<br>```<\/p><p>Bu komut, `my_new_user` ad\u0131nda bir kullan\u0131c\u0131 olu\u015fturur ve \u015fifresini `test_password` olarak ayarlar.<\/p><p>#### Kullan\u0131c\u0131ya Yetki Verme<br>Yeni olu\u015fturulan kullan\u0131c\u0131ya belirli bir veritaban\u0131 \u00fczerinde yetkiler vermek i\u00e7in `GRANT` komutunu kullanabilirsiniz:<\/p><p>```sql<br>GRANT ALL PRIVILEGES ON my_db.* TO 'my_new_user'@'localhost';<br>```<\/p><p>Bu komut, `my_new_user` kullan\u0131c\u0131s\u0131na `my_db` veritaban\u0131 \u00fczerinde t\u00fcm yetkileri verir.<\/p><p>#### \u015eifreyi Hashleyerek Kullan\u0131c\u0131 Olu\u015fturma<br>\u015eifreyi hashleyerek kullan\u0131c\u0131 olu\u015fturmak i\u00e7in `PASSWORD` fonksiyonunu kullanabilirsiniz:<\/p><p>```sql<br>SELECT PASSWORD('test_password'); -- Hash de\u011ferini al\u0131r<br>CREATE USER 'my_new_user'@'localhost' IDENTIFIED BY PASSWORD '*4414E26EDED6D661B5386813EBBA95865DBC4728';<br>```<\/p><p>---<\/p><p>### \u015eifre De\u011fi\u015ftirme<\/p><p>MySQL'de kullan\u0131c\u0131 \u015fifrelerini de\u011fi\u015ftirmek i\u00e7in farkl\u0131 y\u00f6ntemler bulunmaktad\u0131r. Bu i\u015flem, \u00f6zellikle g\u00fcvenlik a\u00e7\u0131s\u0131ndan \u00f6nemlidir.<\/p><p>#### Linux'ta Root \u015eifresini De\u011fi\u015ftirme<br>1. MySQL sunucusunu durdurun:<br>&nbsp; ```bash<br>&nbsp; sudo \/etc\/init.d\/mysql stop<br>&nbsp; ```<\/p><p>2. MySQL'i yetkilendirme sistemi olmadan ba\u015flat\u0131n:<br>&nbsp; ```bash<br>&nbsp; sudo mysqld_safe --skip-grant-tables &amp;<br>&nbsp; ```<\/p><p>3. MySQL'e root olarak ba\u011flan\u0131n:<br>&nbsp; ```bash<br>&nbsp; mysql -u root<br>&nbsp; ```<\/p><p>4. Yeni \u015fifreyi ayarlay\u0131n:<br>&nbsp; ```sql<br>&nbsp; FLUSH PRIVILEGES;<br>&nbsp; ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';<br>&nbsp; FLUSH PRIVILEGES;<br>&nbsp; exit;<br>&nbsp; ```<\/p><p>5. MySQL sunucusunu yeniden ba\u015flat\u0131n:<br>&nbsp; ```bash<br>&nbsp; sudo \/etc\/init.d\/mysql start<br>&nbsp; ```<\/p><p>#### Windows'ta Root \u015eifresini De\u011fi\u015ftirme<br>1. Komut \u0130stemi'ni y\u00f6netici olarak ba\u015flat\u0131n.<br>2. MySQL'in kurulu oldu\u011fu dizine gidin:<br>&nbsp; ```bash<br>&nbsp; cd C:\\mysql\\bin<br>&nbsp; ```<\/p><p>3. MySQL komut sat\u0131r\u0131na ba\u011flan\u0131n:<br>&nbsp; ```bash<br>&nbsp; mysql -u root mysql<br>&nbsp; ```<\/p><p>4. Yeni \u015fifreyi ayarlay\u0131n:<br>&nbsp; ```sql<br>&nbsp; SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password');<br>&nbsp; ```<\/p><p>---<\/p><p>### MySQL 5.7+ i\u00e7in Varsay\u0131lan Root \u015eifresini Kurtarma<\/p><p>MySQL 5.7 ve sonras\u0131nda, sunucu ilk ba\u015flat\u0131ld\u0131\u011f\u0131nda root \u015fifresi otomatik olarak olu\u015fturulur ve `mysqld.log` dosyas\u0131na kaydedilir.<\/p><p>#### Varsay\u0131lan \u015eifreyi Bulma<br>Varsay\u0131lan \u015fifreyi bulmak i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabilirsiniz:<br>```bash<br>sudo grep 'temporary password' \/var\/log\/mysqld.log<br>```<\/p><p>#### \u015eifreyi De\u011fi\u015ftirme<br>Varsay\u0131lan \u015fifre ile MySQL'e ba\u011flan\u0131n ve yeni \u015fifreyi ayarlay\u0131n:<br>```bash<br>mysql -uroot -p<br>ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass51';<br>```<\/p><p>---<\/p><p>### G\u00fcvenlik \u00d6nlemleri<\/p><p>MySQL'de g\u00fcvenli\u011fi art\u0131rmak i\u00e7in a\u015fa\u011f\u0131daki \u00f6nlemleri alabilirsiniz:<\/p><p>- **Root Kullan\u0131c\u0131s\u0131n\u0131 S\u0131n\u0131rland\u0131rma:** Root kullan\u0131c\u0131s\u0131n\u0131 sadece `localhost` \u00fczerinden eri\u015fime izin verin.<br>&nbsp;```sql<br>&nbsp;GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';<br>&nbsp;```<\/p><p>- **Uygulama Kullan\u0131c\u0131lar\u0131n\u0131 S\u0131n\u0131rland\u0131rma:** Uygulama kullan\u0131c\u0131lar\u0131n\u0131 sadece belirli bir veritaban\u0131 \u00fczerinde yetkilendirin.<br>&nbsp;```sql<br>&nbsp;GRANT SELECT, INSERT, UPDATE, DELETE ON my_db.* TO 'app_user'@'%';<br>&nbsp;```<\/p><p>- **Stored Procedure Kullan\u0131m\u0131:** Root yetkisi gerektiren i\u015flemler i\u00e7in stored procedure'ler kullan\u0131n ve `SECURITY DEFINER` ile s\u0131n\u0131rland\u0131r\u0131n.<\/p><p>---<\/p><p>### Sonu\u00e7<\/p><p>MySQL'de kullan\u0131c\u0131 y\u00f6netimi ve \u015fifre de\u011fi\u015ftirme i\u015flemleri, veritaban\u0131 g\u00fcvenli\u011fi a\u00e7\u0131s\u0131ndan olduk\u00e7a \u00f6nemlidir. Yeni kullan\u0131c\u0131lar olu\u015fturarak ve \u015fifreleri d\u00fczenli olarak g\u00fcncelleyerek, veritaban\u0131n\u0131z\u0131 yetkisiz eri\u015fimlere kar\u015f\u0131 koruyabilirsiniz. Ayr\u0131ca, g\u00fcvenlik \u00f6nlemleri alarak veritaban\u0131n\u0131z\u0131n g\u00fcvenli\u011fini daha da art\u0131rabilirsiniz.<\/p>","excerpt":"MySQL'de kullan\u0131c\u0131 y\u00f6netimi ve \u015fifre de\u011fi\u015ftirme i\u015flemleri, veritaban\u0131 g\u00fcvenli\u011fi a\u00e7\u0131s\u0131ndan olduk\u00e7a \u00f6nemlidir. Yeni kullan\u0131c\u0131lar olu\u015fturarak ve \u015fifreleri d\u00fczenli olarak g\u00fcncelleyerek, veritaban\u0131n\u0131z\u0131 yetkisiz eri\u015fimlere kar\u015f\u0131 koruyabilirsiniz. Ayr\u0131ca, g\u00fcvenlik \u00f6nlemleri alarak veritaban\u0131n\u0131z\u0131n g\u00fcvenli\u011fini daha da art\u0131rabilirsiniz.","created_at":"2025-01-13 15:59:21","updated_at":"2026-09-08 03:45:22","category_id":9,"view_count":798,"reading_time":4,"status":"published","editor_choice":0,"is_editor_choice":0,"published_at":"2025-01-13 15:59:21","featured_image":"resimyok.jpg","slug":"sql-notlari-kullanici-yonetimi-ve-sifre-degistirme","category_name":"Yaz\u0131l\u0131m","category_slug":"yazilim","category_color":"#ef4444"}