ДВИЖОК, РАБОТАЮЩИЙ С БД - ставим и настраиваем MySQL fenix (f3x@land.ru) Спецвыпуск Xakep, номер #028, стр. 028-048-3 Итак, входим в монитор и получаем его приглашение (подразумевается, что по дефолту учетная запись рута не содержит пароля): mysql> посмотрим, какие базы сейчас установлены: Каждый запрос к базе данных должен завершаться "точкой с запятой". Перейдем в базу mysql и посмотрим список ее таблиц: mysql> \u mysql Database changed (аналогичным образом можно войти в любую другую базу, введя ее имя с ключом \u) Просмотрим список таблиц, которые содержатся в данной базе данных: Каждая таблица содержит набор полей, которые предназначены для данных определенного типа, соответствующих типу поля. Для того чтобы получить значения полей и содержащиеся в них данные используют структурированных запрос select; другими словами, нам нужно сделать выборку из определенной таблицы, определенных полей, активной базы данных, так как таблица user является наиболее важной (в ней прописаны аккаунты пользователей и их права). Просмотрим ее содержимое: mysql> select * from user; (данный запрос читается как "сделать выборку из таблицы user и вывести все записи в данной таблице") На экран будут выведены все записи из таблицы user для того чтобы просмотреть какую-то определенную запись, например, запись пользователя root; необходимо задать критерий выборки: mysql> select * from user where user='root'; (данный запрос читается как "сделать выборку из таблицы user и вывести все записи в данной таблице, которым соответствует значение root поле user таблицы user") Используя данные запросы, ты сможешь просмотреть записи в любых других базах, к которым имеешь доступ. НАСТРОЙКА УЧЕТНЫХ ЗАПИСЕЙ В MYSQL Как было замечено выше, самый главный пользователь это root, который имеет полный доступ к базам данных; вначале необходимо задать для него пароль, так как по умолчанию он не установлен (в Unix инсталляции): altair# mysql -u root mysql данная команда, означает запуск mysql-клиента по имени mysql от имени пользователя root (-u root) и выбор базы данных mysql. Далее откроется консоль программы mysql. Делаем обычный sql-запрос для обновления записи рута: mysql>update user SET password=PASSWORD('new_password') where user='root'; Этот запрос обновит поля password для таблицы user, в которой поля user='root'. Другими словами, для пользователя root будет установлен пароль new_password, закриптованный по методу PASSWORD(). Теперь необходимо заставить mysql принять изменения: mysql>flush privileges; Есть еще один способ (только для версий mysql, бOльших 3.22): mysql>set password for root=PASSWORD('new_password'); или еще так с помощью программы mysqladmin: altair# mysqladmin -u root password new_password Теперь пользователь root не сможет просто так войти в программу mysql. Набираем: mysql>exit и убеждаемся в этом: |