Druzya.org
Возьмемся за руки, Друзья...
 
 
Наши Друзья

Александр Градский
Мемориальный сайт Дольфи. 
				  Светлой памяти детей,
				  погибших  1 июня 2001 года, 
				  а также всем жертвам теракта возле 
				 Тель-Авивского Дельфинариума посвящается...

 
liveinternet.ru: показано количество просмотров и посетителей

Библиотека :: Компьютеры и Программирование :: Начинаем изучать MySQL
<<-[Весь Текст]
Страница: из 157
 <<-
 
утраченные с момента последнего резервирования. Поскольку журнал изменений 
является текстовым файлом, можно просмотреть команды SQL для поиска конкретных 
данных.
Каким бы методом вы не пользовались для резервирования, производите его часто и 
периодически проверяйте возможность реального восстановления своих данных. 
Многие администраторы баз данных старательно сохраняли резервные данные лишь 
для того, чтобы в один прекрасный день убедиться, что в результате ошибки - 
оператора, программы или носителя информации - их резервные копии стали 
абсолютно бесполезны.
Система безопасности
Вам не только нужно иметь надежный доступ к своим данным, но и быть уверенным, 
что у других нет никакого доступа к ним. MySQL использует собственный сервер 
баз данных для обеспечения безопасности. При первоначальной установке MySQL 
создается база данных под названием «mysql». В этой базе есть пять таблиц: db, 
host, user, tab-les_priv, и columns_priv . Более новые версии MySQL создают 
также базу данных с названием func, но она не имеет отношения к безопасности. 
MySQL использует эти таблицы для определения того, кому что позволено делать. 
Таблица user содержит данные по безопасности, относящиеся к серверу в целом. 
Таблица host содержит права доступа к серверу для удаленных компьютеров. И 
наконец, db, tables_priv и со-lumns_priv управляют доступом к отдельным базам 
данных, таблицам и колонкам.
Мы кратко рассмотрим все таблицы, поддерживающие безопасность в MySQL, а затем 
рассмотрим технологию их использования при обеспечении защиты ядром MySQL.
Таблица user
Таблица user имеет вид, показанный в Таблице 4-1:
Таблица 4-1. Таблица user
ПолеТипNullКлючЗначениеПримеч.по умолчаниюHostchar(60)PRIUserchar(16)PRI
ПолеТипNullКлючЗначениеПримеч.по умолчаниюPasswordchar(16)Select_privenum('N',
'Y')NInsert priv enum('N','Y')   N Update_privenum('N','Y')NDelete_privenum('N',
'Y')NCreate_privenum('N','Y')NDrop privenum('N','Y')NReload privenum('N','Y')N
Shutdown_privenum('N','Y')NProcess_privenum('N','Y')NFile_privenum('N','Y')N
Grant_privenum('N','Y')NReferences_privenum('N','Y')NIndex_privenum('N','Y')N
Alter_privenum('N','Y')NВ колонках Host и User можно использовать символ «% », 
заменяющий произвольную последовательность символов. Например, имя узла 
«chem%lab» включает в себя «chembiolab», «chemtestlab» и т. д. Специальное имя 
пользователя «nobody» действует как одиночный «% », то есть охватывает всех 
пользователей, не упомянутых где-либо в другом месте. Ниже разъясняется смысл 
различных прав доступа:
Select_priv
Возможность выполнять команды SELECT.
Insert__priv
Возможность выполнять команды INSERT.
Update_priv
Возможность выполнять команды UPDATE.
Delete_priv
Возможность выполнять команды DELETE.
Createjyriv
Возможность выполнять команды CREATE или создавать базы данных.
Drop_priv
Возможность выполнять команды DROP для удаления баз данных. 
Reload_priv
Возможность перезагружать информацию о доступе с помощью mysqladmin reload.
Shutdown_priv
Возможность останавливать сервер через mysqladmin shutdown. 
Process_priv
Возможность управлять процессами сервера.
File_priv
Возможность читать и записывать файлы с помощью команд типа SELECT INTO OUTFILE 
и LOAD DATA INFILE.
Grant_priv
Возможность давать привилегии другим пользователям. 
Index_priv
Возможность создавать и уничтожать индексы.
Alter_priv
Возможность выполнять команду ALTER TABLE.
В MySQL есть специальная функция, позволяющая скрыть пароли от любопытных глаз. 
Функция password() зашифровывает пароль. Ниже показано, как использовать 
функцию password() в процессе добавления пользователей в систему.
INSERT INTO user (Host, User, Password, Select_priv,
Insert_priv, Update_priv, Dclete_priv)
VALUES ('%', 'bob', password('mypass'), 'Y', 'Y', 'Y'.'Y')
INSERT INTO user (Host, User, Password, Select_priv)
VALUES ('athens.imaginary.com', 'jane', '', 'Y')
INSERT INTO user (Host, User, Password)
VALUES ('%', 'nobody', ")
INSERT INTO user (Host, User, Password, Select_pnv,
Insert_priv, Updatejriv, Delete_priv)
VALUES ('athens.imaginary.com', 'nobody',
password('thispass'), 'Y', 'Y', 'Y', 'Y')
Имена пользователей MySQL обычно не связаны с именами пользователей 
 
<<-[Весь Текст]
Страница: из 157
 <<-