PentadbiranMySQL: cara mencipta pengguna dan menentukan haknya

Isi kandungan:

PentadbiranMySQL: cara mencipta pengguna dan menentukan haknya
PentadbiranMySQL: cara mencipta pengguna dan menentukan haknya
Anonim

Ciri ciri MySQL ialah keselamatannya sendiri, bergantung pada perlindungan luaran. Sebagai sistem pengurusan pangkalan data yang moden, berciri lengkap dan cekap, MySQL mempunyai alatan sendiri untuk mengurus pengguna dan akses mereka kepada sumber yang dikawalnya.

mysql mencipta pengguna
mysql mencipta pengguna

Jika anda tidak mengetahui nama pengguna dan kata laluan yang betul, mengakses pangkalan data melalui MySQL adalah sangat sukar.

Dalam mod pengehosan biasa, ini sudah memadai. Situasi yang tidak dijangka, serangan penggodam dan masalah lain adalah masalah pentadbiran sistem luaran dan perkhidmatan keselamatan. Konsep ini telah menjadi tradisional dan hampir tidak dibincangkan.

Pasang pelayan MySQL dan akar pengguna

Dalam apa jua persekitaran pengendalian sistem pengurusan pangkalan data dipasang, ia sentiasa mempunyai sekurang-kurangnya satu pengguna: root. Pasang MySQL, buat pengguna dengan semua hak root - tanpa ini, gunakanpelayan tidak boleh dilakukan. Keistimewaan pengguna ini mencukupi untuk:

  • buat dan tadbir pengguna baharu;
  • buat dan urus pangkalan data.
mysql mencipta pengguna dan memberikan hak kepada pangkalan data
mysql mencipta pengguna dan memberikan hak kepada pangkalan data

Pada asasnya, pengguna "tanpa kata laluan" boleh wujud dalam MySQL, tetapi ini tidak boleh diterima.

Amalan biasa:

  • pelayan dipasang pada komputer sendiri, tempat pengehosan boleh dipasang (pilihan tempatan);
  • pelayan adalah pada pengehosan awam di Internet.

Dalam kes pertama, adalah mungkin untuk bekerja dengan pelayan dari baris arahan dan menggunakan phpMyAdmin, dalam kes kedua, hanya phpMyAdmin atau alat yang serupa, tetapi baris arahan boleh diakses melalui akses SSH jauh.

Alat pentadbiran sendiri

Perasaan kekeluargaan dengan keluarga Unixoid dan dengan masa lalu dari pelayan Apache adalah ciri khas MySQL: buat pengguna ialah baris arahan dengan sintaks yang aneh. Bagi profesional yang bekerja dengan Linux dan sistem yang serupa, ini sudah biasa kerana ia kelihatan liar di mata pengguna Windows yang tidak pernah "memasuki kehidupan sebenar."

Membuat pengguna bermula dengan memulakan baris arahan pelayan. Dalam persekitaran Windows, ini dilakukan seperti berikut.

mysql mencipta pengguna dengan semua hak
mysql mencipta pengguna dengan semua hak

Pertama (1) anda perlu menjalankan baris arahan sebagai pentadbir, kemudian pergi ke folder di mana MySQL terletak (2), kemudianmulakan pelayan itu sendiri (3):

mysql -u… -p

di sini "-u…" dan "-p" ialah kekunci yang menunjuk kepada nama "…"=root (atau nama lain) dan kata laluannya. Pada dasarnya, pengguna mungkin bukan root, tetapi pengguna yang mempunyai hak "root" (pentadbiran).

Penting: pelayan sebenarnya sentiasa berjalan, di sini mysql -u… -p ialah arahan untuk mengakses pelayan, bukan memulakannya.

Dalam persekitaran Linux dan sistem yang serupa, arahan sedemikian ialah tindakan "asli" dan, sebagai peraturan, ditentukan dengan hanya memulakan mysqld di tempat yang betul (di laluan yang betul), ini harus diperiksa dengan pihak pentadbir. Biasanya terdapat nama yang berbeza di sini: bukan mysql, tetapi mysqld. Juga di sini, tindakan ini tidak selalu tersedia untuk semua pengguna (sistem pengendalian, bukan pelayan MySQL). Tidak seperti Windows, dalam Linuxoids, ketertiban dan keselamatan adalah keperluan semula jadi dan tidak boleh dirunding, yang sentiasa diperlakukan secara beradab.

Dalam apa jua keadaan, sebaik sahaja mysql dimulakan, ia akan mengumumkannya dengan gesaan (4):

mysql>

dan boleh digunakan untuk kedua-dua pengguna dan pangkalan data.

Nota. Apabila memasang dalam persekitaran Windows, segala-galanya: Apache, MySQL, PHP, phpMyAdmin boleh ditetapkan kepada laluan lalai, tetapi disyorkan untuk menggunakan lokasi yang lebih padat dan lebih dekat untuk alatan penting ini:

  • 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\.

Logik ini bukan sahaja akan memudahkan pentadbiran, tetapi juga mengembangkan keupayaan pembangun untuk beralih antara versi produk dan mengurus fungsinya.

Mengusahakan baris arahan MySQL

Setelah pelayan membalas dan menyediakan baris arahannya, pengguna boleh dibuat dan diberikan kebenaran.

mysql mencipta pengguna untuk mana-mana hos
mysql mencipta pengguna untuk mana-mana hos

Dalam contoh ini, arahan cipta pengguna mencipta pengguna Petrov dengan kata laluan 123DFG. Jika ralat dibuat semasa memasukkan perintah, pelayan menawarkan untuk membetulkannya, tetapi lebih baik jangan sekali-kali melakukan kesilapan semasa bekerja pada baris arahan!

Perintah berikut berikan semua keistimewaan memberikan semua hak kepada segala-galanya. Perintah flush boleh diabaikan, tetapi ia 'muncul' penimbal perintah, iaitu, ia membetulkan pelaksanaannya.

MySQL: cipta pengguna dan berikan hak kepada pangkalan data

Perintah yang digunakan dalam contoh:

BERI SEMUA KEISTIMEWAAN PADA. KEPADA 'Petrov'@'localhost';

sebenarnya memberikan pengguna Petrov akses kepada semua pangkalan data (asterisk pertama) kepada semua jadual (asterisk kedua).

mysql mencipta pengguna dengan semua hak
mysql mencipta pengguna dengan semua hak

Sebagai peraturan umum MySQL, mencipta pengguna ialah:

BERI [jenis keistimewaan] PADA [nama pangkalan data].[nama jadual] KEPADA '[pengguna]'@'localhost';

Keistimewaan berikut dibenarkan:

  • SEMUA KEISTIMEWAAN - semua hak.
  • CREATE - hak untuk mencipta jadual/pangkalan data baharu.
  • DROP - hak untuk menggugurkan jadual/pangkalan data.
  • DELETE - hak untuk memadam maklumat dalam jadual.
  • INSERT - hak untuk menulis maklumat pada jadual.
  • SELECT - hak untuk membaca maklumat daripada jadual.
  • KEMASKINI - hak untuk mengemas kini maklumat dalam jadual.
  • PILIHAN GERAN - hak untuk bekerja dengan keistimewaan pengguna lain.

Dari sudut pandangan praktikal, dalam MySQL "buat pengguna" membayangkan tiga pilihan untuk hak:

  • semua hak untuk semua pangkalan data dan semua pengguna;
  • baca dan tulis;
  • baca sahaja.

Pilihan lain untuk memberikan hak jarang diperlukan. Dalam persekitaran Linux, terdapat lebih banyak alasan untuk kebebasan "undang-undang" (dan keperluan), tetapi terdapat lebih banyak peluang di sana daripada di Windows.

Kendalian terbalik "cipta pengguna" MySQL adalah jatuh.

jatuhkan pengguna 'Petrov'@'localhost';

Selepas melaksanakan arahan ini, Petrov tidak lagi menjadi pengguna dan keistimewaannya akan hilang. Untuk menukar keistimewaan, gunakan arahan:

BATALKAN [keistimewaan] PADA [DB].[Jadual] KE '[pengguna]'@'localhost';

Tindakan biasa dalam MySQL ialah mencipta pengguna atau memadamkannya, tetapi menukar keistimewaan juga merupakan operasi yang sah (jarang diminta).

Menggunakan phpMyAdmin

Terdapat banyak pelaksanaan alat hebat ini. Bergantung pada versi Apache, PHP dan MySQL yang digunakan, ia selalunya mengambil masa yang lama untuk mencari versi yang sesuai untuk produk ini, tetapi setelah phpMyAdmin berjaya dipasang, pengguna mempunyai banyak ciri yang mudah dan selesa.antara muka.

mysql mencipta pengguna untuk mana-mana hos
mysql mencipta pengguna untuk mana-mana hos

Menggunakan phpMyAdmin, anda boleh memberitahu MySQL untuk mencipta pengguna untuk mana-mana hos dan mengurus pengguna sedia ada dalam cara hampir pembedahan.

phpMyAdmin bukanlah satu-satunya alat dengan antara muka yang selesa, intuitif dan kaya dengan ciri, tetapi ia adalah alat yang paling popular untuk mentadbir pelayan MySQL.

Mengenai baris arahan dan keselamatan

Sudah tentu, menggunakan baris arahan MySQL adalah latihan yang tidak menarik, tetapi perlu diingat bahawa dalam beberapa kes hanya baris arahan pelayan boleh menyimpan pangkalan data atau pengguna, memastikan import atau eksport maklumat.

mysql mencipta pengguna untuk mana-mana hos
mysql mencipta pengguna untuk mana-mana hos

Versi perisian berkembang begitu pantas sehingga pembangun tidak mempunyai masa untuk menggabungkan ciri-ciri, contohnya, PHP dan MySQL, MySQL dan phpMyAdmin. Jika sesuatu berlaku, baris arahan akan sentiasa menyelamatkan hari.

Seseorang juga tidak boleh lupa: Pentadbiran MySQL hanya tentang mengakses pangkalan datanya dan melalui fungsinya. Fail pangkalan data dibuka untuk diakses di luar MySQL. Mengamankan MySQL secara luaran dan sumber yang dikawalnya adalah keperluan sebenar dan penting.

Disyorkan: