Əsas səhifə > MySQL > MySQL grant table and initial accounts

MySQL grant table and initial accounts

MySQL installation-la bərabər mysql,information_schema database-ləri gəlir.
*mysql bu yazıda server yox məhz mysql schema(database) adıdır*
mysql-də user cədvəli var ki, orada MySQL(server) user-lərin access privilege-ləri və.s məlumatları yerləşir.
mysql full table list:

mysql> show tables;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| event                     |
| func                      |
| general_log               |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| host                      |
| ndb_binlog_index          |
| plugin                    |
| proc                      |
| procs_priv                |
| proxies_priv              |
| servers                   |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+
24 rows in set (0.00 sec)

Elə bu haqda oxuyurdum ki maraqlı bir şey aşkarlamışam…Sən demə parolsuz root user-lər və ananonim user-lər mövcud imiş. Təbii ki bu təhlükəli haldı.
Beynəlxalq məsləhətə əsasən biz bütün parolsuz root-lara parol verəcik və ananonim user-ləri siləcik…

Yoxlamaq üçün bir neçə connection yerinə yetirək.
root connection no password

[root@sh ~]# mysql -u root --host=127.0.0.1
Welcome to the MySQL monitor.
.
.
.
mysql> show grants;
+---------------------------------------------------------------------+
| Grants for root@127.0.0.1                                           |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' WITH GRANT OPTION |
+---------------------------------------------------------------------+
1 row in set (0.00 sec)

Nə yaxşı🙂

Anonym user connection:

[root@sh ~]# mysql -u --host=localhost
Welcome to the MySQL monitor.
.
.
.
mysql> show grants;
+--------------------------------------+
| Grants for @localhost                |
+--------------------------------------+
| GRANT USAGE ON *.* TO ''@'localhost' |
+--------------------------------------+
1 row in set (0.00 sec)

The USAGE privilege specifier stands for “no privileges.”

Həqiqətən də anonim user-lə heç bir şey etmək olmur.

mysql> use world;
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'world'

Təcili olaraq bu yuxarıdakı 2 anonim user-i silirik:

mysql> DROP USER ''@'localhost';
Query OK, 0 rows affected (0.03 sec)

mysql> DROP USER ''@'sh.rzayev';
Query OK, 0 rows affected (0.11 sec)

Bəli silindilər:

Daha sonra parolsuz root-lara parol verək. Tək-tək fərqli parollar və yaxud toplu halda eyni parolu vermək olur:
Tək-tək:

mysql> SET PASSWORD FOR 'root'@'127.0.0.1' = PASSWORD('yeni_parol');
mysql> SET PASSWORD FOR 'root'@'::1' = PASSWORD('yeni_parol');
mysql> SET PASSWORD FOR 'root'@'host_name' = PASSWORD('yeni_parol');

Toplu halda:

mysql> UPDATE mysql.user SET Password = PASSWORD('yeni_parol')
    ->     WHERE User = 'root';
mysql> FLUSH PRIVILEGES;

FLUSH məcbur edir ki server grant-ları yenidən oxusun. Əksi təqdirdə yeni parollar təsirsiz qalır.
Yeni password-lər verildi:

Təşəkkürlər🙂

  1. Hələlik heç bir şərh yoxdur
  1. No trackbacks yet.

Bir cavab yazın

Sistemə daxil olmaq üçün məlumatlarınızı daxil edin və ya ikonlardan birinə tıklayın:

WordPress.com Loqosu

WordPress.com hesabınızdan istifadə edərək şərh edirsinz. Çıxış / Dəyişdir )

Twitter rəsmi

Twitter hesabınızdan istifadə edərək şərh edirsinz. Çıxış / Dəyişdir )

Facebook fotosu

Facebook hesabınızdan istifadə edərək şərh edirsinz. Çıxış / Dəyişdir )

Google+ foto

Google+ hesabınızdan istifadə edərək şərh edirsinz. Çıxış / Dəyişdir )

%s qoşulma

%d bloqqer bunu bəyənir: