MySQL

:: DEVELOPER ZONE

Login / Register

  • MySQL.com
  • Developer Zone
  • Partners
  • Online Shop
  • Downloads
  • Documentation
  • Forums
  • Lists
  • Bugs
  • Events
  • User Groups
  • Guilds
  • Blogs
  • Support
  • Resources
  • Books
  • FAQ

Справочное руководство по MySQL 4.0. :: 4 Администрирование баз данных :: 4.3 Управление учетными записями пользователей MySQL :: 4.3.4 Задание изначальных привилегий MySQL

  • Overview
  • MySQL Reference Manual
  • MaxDB Documentation
  • Connectors

Search the MySQL manual:


  • Справочное руководство по MySQL 4.0.

  • 4.3 Управление учетными записями пользователей MySQL
  • 4.3.1 Синтаксис команд GRANT и REVOKE
  • 4.3.2 Имена пользователей MySQL и пароли
  • 4.3.3 Когда изменения в привилегиях вступают в силу
  • 4.3.4 Задание изначальных привилегий MySQL
  • 4.3.5 Добавление новых пользователей в MySQL
  • 4.3.6 Ограничение ресурсов пользователя
  • 4.3.7 Задание паролей
  • 4.3.8 Обеспечение безопасности своего пароля
  • 4.3.9 Использование безопасных соединений

Get the MySQL Language Reference and MySQL Administrator's Guide from MySQL Press!


Additional languages

  • German


Learn about new MySQL releases, technical articles, events and more.

Subscribe to the monthly MySQL Newsletter!


Previous / Next / Up / Table of Contents

4.3.4. Задание изначальных привилегий MySQL

После установки MySQL изначальные привилегии доступа задаются при помощи scripts/mysql_install_db. See Раздел 2.3.1, «Обзор быстрой установки». Скрипт mysql_install_db запускает сервер mysqld, а затем инициализирует таблицы предоставления привилегий со следующим набором привилегий:

  • В качестве суперпользователя создается MySQL root который может делать все, что угодно. Соединения должны устанавливаться с локального компьютера.

    Примечание: Изначально пароль root пуст, поэтому кто угодно может подсоединиться в качестве root без пароля и получить все привилегии.

  • Создается анонимный пользователь, который может выполнять любые операции над базами данных с именами test или начинающимися с test_. Соединения должны устанавливаться с локального компьютера. Это означает, что любой локальный пользователь может подключиться без пароля и будет воспринят сервером как анонимный пользователь.

  • Остальные привилегии запрещены. Например, обычный пользователь не может использовать команды mysqladmin shutdown или mysqladmin processlist.

Примечание: В Windows принятые по умолчанию привилегии отличаются от указанных. See Раздел 2.6.2.3, «Работа MySQL в среде Windows».

Поскольку сразу после установки программа совершенно не защищена, первым делом необходимо задать пароль для пользователя MySQL root. Это можно сделать следующим образом (обратите внимание, что пароль указывается при помощи функции PASSWORD()):

shell> mysql -u root mysql
mysql> SET PASSWORD FOR root@localhost=PASSWORD('new_password');

Опытные пользователи могут работать непосредственно с таблицами назначения привилегий:

shell> mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('new_password')
    ->     WHERE user='root';
mysql> FLUSH PRIVILEGES;

Еще один способ задать пароль - воспользоваться командой mysqladmin:

shell> mysqladmin -u root password new_password

Изменять пароли других пользователей могут только пользователи с правом записи/обновления базы данных mysql. Все обычные пользователи (не анонимные) могут модифицировать только свой собственный пароль при помощи указанных выше команд или команды SET PASSWORD=PASSWORD('new_password').

Обратите внимание на то, что если пароль в таблице user обновляется напрямую при помощи первого метода, требуется указать серверу на необходимость перезагрузки таблиц привилегий (при помощи команды FLUSH PRIVILEGES), иначе изменения не будут учтены.

После того, как был задан пароль root, этот пароль необходимо будет вводить, подсоединяясь к серверу как root.

Можно оставить пароль root пустым, тогда не придется его указывать во время проведения дополнительных установок и тестирования. Тем не менее, обязательно укажите его, прежде чем использовать сервер для любой реальной работы.

Ознакомьтесь со скриптом scripts/mysql_install_db, чтобы увидеть, как задавать привилегии по умолчанию. Данный скрипт можно использовать как основу для добавления других пользователей.

Если необходимо, чтобы изначальные привилегии отличались от указанных выше, можно изменить базу mysql_install_db еще до ее запуска.

Чтобы полностью заново создать таблицы предоставления привилегий, удалите все файлы с расширениями .frm, .MYI и .MYD в каталоге, где находится база данных mysql (это каталог с именем mysql в каталоге базы данных, который выводится на экран при запуске команды mysqld --help). Затем запустите скрипт mysql_install_db (возможно, после добавления в него необходимых привилегий).

Примечание: в более старых, чем 3.22.10, версиях MySQL файлы с расширением .frm удалять не следует. Если же случайно они были удалены, их следует восстановить, скопировав из дистрибутива MySQL до запуска mysql_install_db.


This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

Top / Previous / Next / Up / Table of Contents

© 1995-2005 MySQL AB. All rights reserved.

  • About MySQL
  • Careers
  • Site Map
  • Contact Us
  • Legal
  • Privacy Policy
  • Trademark Info
  • No Software Patents!