MySQL-in xarakterik xüsusiyyəti xarici qorunmaya əsaslanan öz təhlükəsizliyidir. Müasir, tam funksiyalı və səmərəli verilənlər bazası idarəetmə sistemi kimi MySQL-in istifadəçiləri idarə etmək və onların nəzarət etdiyi resurslara çıxışı üçün öz alətləri var.
Düzgün istifadəçi adı və parolu bilmirsinizsə, MySQL vasitəsilə verilənlər bazasına daxil olmaq çox çətindir.
Normal hostinq rejimində bu kifayətdir. Gözlənilməz hallar, haker hücumları və digər problemlər xarici sistem idarəçiliyi və təhlükəsizlik xidmətlərinin işidir. Bu konsepsiya ənənəvi hal alıb və praktiki olaraq müzakirə edilmir.
MySQL serverini və istifadəçi kökünü quraşdırın
Hansı əməliyyat mühitində verilənlər bazası idarəetmə sistemi quraşdırılıbsa, onun həmişə ən azı bir istifadəçisi var: root. MySQL-i quraşdırın, bütün kök hüquqlarına malik bir istifadəçi yaradın - bu olmadan işləyinserver mümkün deyil. Bu istifadəçinin imtiyazları kifayətdir:
- yeni istifadəçilər yaradın və idarə edin;
- verilənlər bazası yaradın və idarə edin.
MySQL-də "parolsuz" istifadəçilərin mövcud olması prinsipcə mümkündür, lakin bu qəbuledilməzdir.
Ümumi təcrübə:
- hostinqin quraşdırıla biləcəyi öz kompüterində quraşdırılmış server (yerli seçim);
- server İnternetdə ictimai hostinqdədir.
Birinci halda, serverlə komanda xəttindən işləmək və phpMyAdmin, ikinci halda yalnız phpMyAdmin və ya oxşar alətdən istifadə etmək mümkündür, lakin komanda xəttinə uzaqdan SSH girişi vasitəsilə daxil olmaq olar.
Öz idarəetmə vasitələri
Unixoid ailəsi və Apache serverlərinin keçmişi ilə qohumluq hissi MySQL-in əlamətidir: istifadəçi yaratmaq qəribə sintaksisi olan komanda xəttidir. Linux və oxşar sistemlərlə işləyən peşəkarlar üçün bu, heç vaxt “real həyata girməmiş” Windows istifadəçilərinin gözündə vəhşi göründüyü qədər də tanışdır.
İstifadəçi yaratmaq server komanda xəttini işə salmaqla başlayır. Windows mühitində bu, aşağıdakı kimi edilir.
İlk olaraq (1) administrator kimi komanda xəttini işə salmalı, sonra MySQL-in yerləşdiyi qovluğa keçməlisiniz (2), sonraserverin özünü işə salın (3):
mysql -u… -p
burada "-u…" və "-p" adı "…"=kök (və ya başqa ad) və onun parolunu göstərən açarlardır. Prinsipcə, istifadəçi root olmaya bilər, lakin "kök" (inzibati) hüquqlarına malik ola bilər.
Vacib: server əslində həmişə işləyir, burada mysql -u… -p serverə daxil olmaq əmridir, onu işə salmaq deyil.
Linux mühitində və oxşar sistemlərdə belə bir əmr "doğma" hərəkətdir və bir qayda olaraq, mysqld-i düzgün yerdə (doğru yolda) başlamaqla müəyyən edilir, bu, yoxlanılmalıdır. administrator. Burada adətən fərqli bir ad var: mysql deyil, mysqld. Həmçinin burada, bu hərəkət həmişə bütün istifadəçilər üçün (MySQL serverində deyil, əməliyyat sistemində) mövcud olmur. Windows-dan fərqli olaraq, Linuxoidlərdə nizam və təhlükəsizlik təbii və müzakirə olunmayan tələbdir, ona həmişə sivil qaydada yanaşılır.
Hər halda, mysql işə salındıqdan sonra bunu (4) əmri ilə elan edəcək:
mysql>
və həm istifadəçilər, həm də verilənlər bazası ilə işləmək mümkün olacaq.
Qeyd. Windows mühitində quraşdırarkən hər şey: Apache, MySQL, PHP, phpMyAdmin defolt yollara təyin edilə bilər, lakin bu mühüm alətlər üçün daha yığcam və daha yaxın yerlərdən istifadə etmək tövsiyə olunur:
- c:\SCiA\Apache;
- c:\SCiA\PHP;
- c:\SCiA\MySQL;
- …
- c:\SCiB\localhost\www\phpMyAdmin;
- c:\SCiB\site1\www;
- c:\SCiB\site2\www;
- …
- c:\SCiB\siteN\www\.
Bu məntiq təkcə administrasiyanı sadələşdirməyəcək, həm də tərtibatçının məhsul versiyaları arasında hərəkət etmək və onların funksionallığını idarə etmək qabiliyyətini genişləndirəcək.
MySQL komanda xəttində işləyirik
Server cavab verdikdən və komanda xəttini təqdim etdikdən sonra istifadəçilər yaradıla və icazələr təyin edilə bilər.
Bu nümunədə istifadəçi yarat əmri 123DFG parolu ilə Petrov istifadəçisini yaratdı. Komanda daxil edərkən xəta olarsa, server onu düzəltməyi təklif edir, lakin komanda xəttində işləyərkən heç vaxt səhv etməmək daha yaxşıdır!
Aşağıdakı əmr bütün imtiyazları verin, hər şeyə bütün hüquqları verir. Təmizləmə əmri buraxıla bilər, lakin o, əmrlərin buferini "açır", yəni onların icrasını düzəldir.
MySQL: istifadəçi yaradın və verilənlər bazasına hüquqlar verin
Nümunədə istifadə olunan əmr:
BÜTÜN İMTİYAZLARI. 'Petrov'@'localhost' ÜZRƏ VERİN;
əslində istifadəçi Petrov-a bütün verilənlər bazalarına (birinci ulduz) bütün cədvəllərə (ikinci ulduz) girişi verir.
Ümumi MySQL qaydası olaraq istifadəçi yaratmaq:
QRANT [imtiyaz növü] ON [verilənlər bazası adı].[cədvəl adı] '[user]'@'localhost';
Aşağıdakı imtiyazlara icazə verilir:
- BÜTÜN İMTİYAZLAR - bütün hüquqlar.
- CREATE - yeni cədvəllər/verilənlər bazaları yaratmaq hüququ.
- DROP - cədvəlləri/verilənlər bazalarını atmaq hüququ.
- DELETE - cədvəllərdə məlumatı silmək hüququ.
- INSERT - cədvəllərə məlumat yazmaq hüququ.
- SEÇ - cədvəllərdən məlumat oxumaq hüququ.
- YENİLƏNİB - cədvəllərdə məlumatı yeniləmək hüququ.
- QRANT SEÇİMİ - digər istifadəçilərin imtiyazları ilə işləmək hüququ.
Praktiki nöqteyi-nəzərdən MySQL-də "istifadəçi yarat" hüquqlar üçün üç variantı nəzərdə tutur:
- bütün verilənlər bazası və bütün istifadəçilər üçün bütün hüquqlar;
- oxumaq və yazmaq;
- yalnız oxumaq.
Hüquqların verilməsi üçün digər seçimlər nadir hallarda tələb olunur. Linux mühitində "qanuni" azadlıq (və zərurət) üçün daha çox əsas var, lakin orada Windows ilə müqayisədə daha çox imkanlar var.
MySQL-in tərs əməliyyatı "istifadəçi yarat" azalır.
damla istifadəçi 'Petrov'@'localhost';
Bu əmri yerinə yetirdikdən sonra Petrov artıq istifadəçi olmayacaq və onun imtiyazları itiriləcək. İmtiyazları dəyişdirmək üçün əmrdən istifadə edin:
[VB]-DA [imtiyazı] LƏĞV EDİN.[Cədvəl] '[user]'@'localhost';
MySQL-də adi əməliyyat istifadəçi yaratmaq və ya onu silməkdir, lakin imtiyazların dəyişdirilməsi də etibarlı əməliyyatdır (nadir hallarda tələb olunur).
phpMyAdmin-dən istifadə
Bu gözəl alətin bir çox tətbiqi var. İstifadə olunan Apache, PHP və MySQL versiyalarından asılı olaraq, bu məhsulun düzgün versiyasını tapmaq çox vaxt tələb edir, lakin phpMyAdmin uğurla quraşdırıldıqdan sonra istifadəçi bir çox rahat xüsusiyyətlərə və rahatinterfeys.
phpMyAdmin-dən istifadə edərək, MySQL-ə istənilən host üçün istifadəçi yaratmağı və mövcud istifadəçiləri əməliyyata yaxın üsullarla idarə etməyi söyləyə bilərsiniz.
phpMyAdmin rahat, intuitiv və zəngin funksiyalı interfeysə malik yeganə alət deyil, lakin MySQL serverlərini idarə etmək üçün ən populyar vasitədir.
Komanda xətti və təhlükəsizlik haqqında
Əlbəttə, MySQL komanda xəttindən istifadə cəlbedici deyil, lakin nəzərə almaq lazımdır ki, bəzi hallarda yalnız server əmr xətti verilənlər bazasını və ya istifadəçini saxlaya, məlumatın idxal və ya ixracını təmin edə bilər.
Proqram təminatı versiyaları o qədər sürətlə inkişaf edir ki, tərtibatçıların, məsələn, PHP və MySQL, MySQL və phpMyAdmin xüsusiyyətlərini birləşdirməyə sadəcə vaxtı yoxdur. Nə isə baş verərsə, komanda xətti həmişə günü xilas edəcək.
Onu da heç vaxt unutmaq olmaz: MySQL administrasiyası yalnız verilənlər bazasına və funksionallığına daxil olmaqdan ibarətdir. Verilənlər bazası faylları MySQL xaricində daxil olmaq üçün açıqdır. MySQL-i və onun idarə etdiyi resursları xaricdən qorumaq real və vacib ehtiyacdır.