|
access=local,remote
database=mynewdata read=*
wriite=admin,root host=* access=local
Для каждой базы данных есть ряд опций. Строки read и write указывают, каким
пользователям вы хотите предоставить право чтения (SELECT) базы или записи
(INSERT, UPDATE, DELETE) в базу данных. Строка host показывает, какие машины
могут иметь удаленный доступ к базе. Если строка access содержит «local»,
значит, разрешены локальные подключения через сокеты Unix, а если содержит
«remote», то разрешены удаленные подключения по TCP.
В файле ACL допустим символ-маска «*» в полях read, write и host. Поэтому можно
иметь такой ACL:
database=mynewdata
read=*
write=msql*
host=*. client.com,"isp.com
access=local, remote
Этот ACL означает, что любой пользователь любой машины в client.com, а также
любой пользователь любой машины в любом домене, оканчивающемся на isp.com -
например, wisp.com или lisp.com, - может иметь подключение к базе данных. Эти
пользователи могут осуществлять чтение данных, но только пользователи, чьи
имена начинаются с «msql», могут вносить в нее изменения.
По умолчанию все права отсутствуют, поэтому если вы пропустите строку write,
никто не сможет модифицировать базу данных. Отдельные пользователи и машины
могут исключаться с помощью префикса «-» перед их именем. Рассмотрим пример:
dataoase=moredata
read=-bob,*
write=jane
host=-junk. isp.com,*, isp.com
access=local,remote
Этот ACL разрешает подключение всем хостам домена isp.com, за исключением junk.
isp.com. Кроме того, чтение разрешено всем пользователям, кроме пользователя
«bob». Только «jane» имеет право записи в базе данных. Поскольку по умолчанию
установлен отказ в доступе, конкретно указывать, кому отказано в доступе, как
«bob'y»» бессмысленно, если строка не содержит также символа «*».
mSQL действует согласно первому обнаруженному соответствию. Например, строка
read=*,-bob дает пользователю «bob» право чтения.
Как указывалось ранее в этой главе, команда msqladmin reload перезагружает ACL
после внесения вами изменений. Если вы ее не выполните, внесенные изменения
будут учтены только при следующем перезапуске сервера.
Утилиты mSQL
Об одной из поставляемых с mSQL утилит, msqladmin, мы уже рассказали. mSQL
содержит семь основных утилит, составляющих основу взаимодействия с ней. В
дополнение к этим основным утилитам mSQL
поддерживает облегченную утилиту обработки сценариев Lite и интерфейс к WWW под
названием W3-mSQL. Помимо того, существуют многочисленные средства сторонних
разработчиков. Сейчас мы подробно остановимся на базовых утилитах, поставляемых
с mSQL, и пробежим по списку утилит «со стороны». К Lite и W3-mSQL мы обратимся
позднее.
Утилиты командной строки
Каждая утилита командной строки имеет подробную подсказку, разъясняющую ее
синтаксис. В основном этот синтаксис является копией команды msqladmln. Именно,
параметр -h позволяет указать машину, а параметр -/ позволяет задать имя
конкретного файла конфигурации.
msql
Это интерфейс командной строки к mSQL, позволяющий интерактивно выполнить
команду SQL для заданной базы данных. Кроме обычных параметров, отмеченных выше,
вы задаете имя базы данных, к которой хотите обратиться. Из всех утилит эта,
вероятно, используется наиболее часто.
msqldump
Эта команда выводит все содержимое базы данных или таблицы, включая саму
структуру таблицы, в виде ряда команд SQL. Результат работы этой утилиты можно
использовать для создания резервной копии базы данных и воссоздания ее на
другой машине.
msqlimport
Эта команда читает форматированный файл данных и добавляет их в указанную
таблицу базы данных. Файл может иметь различный формат, в том числе с
разделителем-запятой и кавычками.
relshow
Эта утилита выводит структуру базы данных и находящихся в ней таблиц. Она
полезна, если вам нужно узнать, какие таблицы есть в базе данных или какие
колонки существуют в нужной таблице.
msqlexport
Эта утилита выводит содержимое таблицы на стандартное устройство вывода в виде
текстового файла с разделителями. Многие другие СУБД и приложения, такие как
Microsoft Excel, могут читать этот файл и импортировать из него данные.
Поддержка сторонними разработчиками
Как и для любого популярного в сети Интернет программного продукта, существуют
многочисленные программы сторонних разработчиков, поддерживающие mSQL. Они
охватывают диапазон от утилит конвертирования до интерфейсов программирования.
Как бы вы ни применяли mSQL, вы наверняка будете использовать хотя бы один из
|
|