metoda / Kl_ITIn_2014
.pdfСледующий вопрос касается инсталлируемых компонентов. Если выбрать
"типичную" инсталляцию, будут инсталлированы серверный модуль,
справочные файлы, а также набор файлов, содержащих описание стандартных привилегий доступа. В случае инсталляции "на выбор" можно будет дополнительно установить утилиты тестирования и библиотеки функций разработки.
Далее начнется собственно установка программы. Если инсталляционный каталог называется не с:\MySql, то по окончании инсталляции нужно будет дополнительно установить файл my.ini. Для этого перейдите в каталог программы и найдите файл my-example.cnf. Скопируйте его в системный каталог (с:\windows) и переименуйте в my.ini. Можно поступить и по-
другому: скопировать файл в корневой раздел диска С: и назвать его my.cnf.
Теперь нужно отредактировать этот файл, чтобы переменная basedir
указывала на инсталляционный каталог. Если соответствующая строка присутствует в виде комментария, удалите символы комментария. В
противном случае добавьте эту строку самостоятельно, например: basedir = d:\MySql
Если программа MySql инсталлируется в Windows 2000 (XP), то, возможно,
ее нужно запустить в виде сервиса. Для этого требуется перейти в режим командной строки и ввести следующую команду:
c:\MySql\bin\MySqld-nt --install
Название сервиса появится в окне сервисов панели управления, где можно будет настроить программу на автоматический запуск. Утилита winMySqladmin, входящая в Windows-дистрибутив, позволяет автоматизировать множество задач, включая конфигурацию.
Если Вы хотите запустить MySql вручную, то Вам потребуется выполнить следующую последовательность действий:
запустите сеанс MS-DOS и перейдите в каталог c:\MySql\bin
введите в строке приглашения:
MySqld-shareware --standalone
или (в зависимости от версии)
MySqld
тем самым будет запущен сервер MySql.
введите "MySql" (без кавычек) в приглашении DOS.
приглашение изменится на приглашение "MySql".
чтобы протестировать сервер MySql, введите в строке приглашения "show databases;"
на экране должно появиться окно, изображенное на рис 2.1
Рис. 2.1. Запуск MySql
Если появится подобный результат, то можно считать, что установка системы MySql успешно завершена.
введите "quit" в приглашении MySql.
снова появится приглашение MS-DOS.
так как в данный момент работа закончена, необходимо остановить сервер
MySql. выполните в приглашении следующую команду.
MySqladmin -u root shutdown
Инсталляция вручную
Если программа MySql инсталлируется не в Linux или Windows либо если услуги менеджера пакетов не нужны, можно инсталлировать двоичные файлы вручную. Соответствующий дистрибутив распространяется в виде tar-
архива, сжатого с помощью программы gzip.
Первый этап заключается в добавлении нового пользователя, от имени которого будет работать демон MySql. Естественно, это не должен быть пользователь root.
Программе MySql нельзя предоставлять права суперпользователя, и никакие компромиссы здесь недопустимы. Можно, например, создать группу MySql и
одноименного пользователя с помощью команд addgroup и adduser либо groupadd и useradd, в зависимости от версии UNIX. Ниже показан пример для
RedHat Linux: groupadd MySql useradd -g MySql MySql
Обычно начальным каталогом MySql выбирают /usr/local/MySql. После распаковки архива будет создан каталог, имя которого совпадает с именем дистрибутива, поэтому удобнее всего просто создать символическую ссылку
MySql. Вот как это делается: cd /usr/local
tar xvfz MySql-4.01.10-pc-linux-gnu-i686.tar.gz ln -s MySql-4.01.10-pc-linux-gnu-i686 MySql cd MySql
Далее необходимо запустить сценарий MySql_install_db, находящийся в каталоге scripts. Он создаст базу данных с описанием существующих привилегий и тестовую базу данных.
Как правило, программа MySql инсталлируется от имени пользователя root,
поэтому следующий шаг заключается в изменении владельца всех файлов программы:
chown -R MySql /usr/local/MySql chgrp -R MySql /usr/local/MySql
Теперь можно запустить демон MySql с помощью сценария safe_MySqld.
Следующая команда запускает демон от имени пользователя MySql: /usr/local/MySql/bin/safe_MySqld --user=MySql &
Если нужно, чтобы сервер MySql запускался всякий раз после перезагрузки компьютера, добавьте соответствующую строку в файл /etc/rc.d/rc.local или же скопируйте сценарий MySql.server в каталог /etc/init.d и создайте правильные символические ссылки на него. В комментариях к файлу supportfiles/MySql.server рекомендуются такие ссылки:
/etc/rc3.d/S99MySql
и
/etc/rcO.d/SOlMySql.
Чтобы запустить программу клиента MySql вручную, введем в строке приглашения команду:
MySql -u root -p
Система попросит ввести пароль. Введите пароль для root (MySqldata).
Если приглашение ввести пароль не появилось, то это может означать, что сервер MySql не работает. Чтобы запустить сервер, перейдите в каталог
/etc/rc.d/init.d/ и выполните команду ./MySql start (или MySql start, в
зависимости от значения переменной PATH). Затем вызовите программу клиента MySql.
Если клиент MySql работает, то появится приглашение MySql>. Введите в строке приглашения следующее:
show databases;
На экране должен появиться вывод, как на рис. 2.1.
Теперь можно считать, что система MySql успешно установлена в Linux.
Компиляция программы
Если в вашем распоряжении имеются исходные коды программы, создайте из них двоичные файлы и следуйте приведенным выше инструкциям.
Поскольку исходные тексты были подготовлены с помощью утилиты autoconf, для компиляции программы нужно будет ввести последовательность команд configure, make и make install.
По возможности следует избегать перекомпиляции программы. Разработчики
MySql досконально знают все тонкости процесса компиляции, поэтому они умеют создавать максимально оптимизированные исполняемые файлы.
При компиляции исходных кодов появляется возможность подключить компоненты, не встроенные в стандартные инсталляционные пакеты. Для некоторых из них требуются библиотеки функций разработки.
Инсталлируйте их до начала компиляции программы.
Предоставление привилегий
Сценарий MySql_install_db предоставляет любому пользователю локального компьютера привилегии, позволяющие регистрироваться на сервере баз данных. Сетевые соединения не допускаются. По умолчанию любой пользователь имеет доступ к базе test, а пользователь root имеет полный доступ ко всем базам данных. Если в какой-то из баз хранится важная информация, нужно назначить суперпользователю пароль.
Программа MySql не работает со списком пользователей, который есть у операционной системы. У нее своя таблица пользователей. Тем не менее,
если при работе с имеющимися клиентскими программами не ввести имя пользователя в процессе регистрации на сервере, будет подставлено системное имя пользователя.
Чтобы поменять пароль пользователя root, нужно запустить интерпретатор команд MySql от имени суперпользователя. Данный интерпретатор представляет собой программу MySql, путь к которой должен быть указан в переменной среды PATH.
Пользователям Windows придется вводить путевое имя целиком, например c:\MySql\bin\MySql. С помощью опции --user задается имя для регистрации.
В нашем случае интерпретатор запускается с помощью такой команды:
MySql --user=root MySql
Вызвав интерпретатор, необходимо обновить две строки в таблице user,
касающиеся пользователя root. Это делает следующая инструкция: UPDATE user SET Password = PASSWORD('secret')
WHERE User = 'root';
В ответ на эту инструкцию интерпретатор отобразит две модифицируемые записи. Естественно, вместо строки 'secret' следует выбрать более надежный пароль. Этот пароль должен применяться лишь в административных целях.
Далее нужно сообщить серверу об изменении привилегий. Для этого предназначена такая инструкция:
FLUSH PRIVILEGES;
Любой пользователь может захотеть создать персональную базу данных для собственных экспериментов, но делать это разрешено только пользователю root. Он же может создавать учетные записи новых пользователей и предоставлять им необходимые привилегии. Рассмотрим пример:
CREATE DATABASE mybase;
GRANT ALL
ON freak.*
TO freak @'%' IDENTIFIED BY PASSWORD('secret');
Первая инструкция создает базу данных mybase. Вторая инструкция создает учетную запись пользователя freak и предоставляет ему доступ к одноименной базе данных. Пароль для доступа — 'secret'. Пользователь freak
может подключаться к базе данных с любого компьютера, даже если он расположен в сети Internet.
3. Лекция: Создание базы данных, основы работы с таблицами
Вэтой лекции рассматриваются способы создания баз данных, команды создания и удаления таблиц
Вэтой лекции мы научимся создавать базы данных.
Команды для создания базы данных в Windows и Linux одинаковы. Однако предварительные команды в Linux немного сложнее. Так как этот материал рассчитан на широкий круг читателей, в том числе и слабо знакомых с ОС
Linux, то системы Windows и Linux будут рассмотрены по отдельности.
Создадим базу данных с именем employees, которая содержит данные о сотрудниках некой компании BigFoot. Предполагается хранить имя,
зарплату, возраст, адрес, e-mail, дату рождения, увлечения, номера телефонов, и т.д. сотрудников.
Создание базы данных в Windows
1.Запустите сервер MySql, выполняя команду MySqld-shareware -standalone в
строке приглашения в каталоге c:\MySql\bin. Более подробно об этом сказано выше, в лекции об установке MySql в Windows.
2.Затем вызовите программу клиента MySql, вводя в строке приглашения
MySql.
3. Приглашение изменится на MySql>. Введите команду: create database employees;
(Примечание: Команда заканчивается символом точки с запятой).
4. Сервер MySql должен ответит примерно как на рис. 3.1
Рис. 3.1. Результат работы команды создания таблицы
[Запрос обработан, изменилась 1 строка (0.00 сек)]
5. Это означает, что была успешно создана база данных. Теперь давайте посмотрим, сколько баз данных имеется в системе. Выполните следующую команду.
show databases;
Сервер ответит списком баз данных, как показано на рис. 3.2.
Рис. 3.2. Просмотр баз данных
Здесь показаны три базы данных, две были созданы MySql во время установки и вновь созданная база данных employees.
6. Чтобы вернуться снова к приглашению DOS, введите команду quit в
приглашении MySql.
Создание базы данных в Linux
1. Пусть пользователь работает под своей учетной записью, а не как суперпользователь root. Необходимо запустить терминальный сеанс и стать суперпользователем (Для этого выполните команду su и введите пароль суперпользователя root).
2. Запустим сервер MySql. Вводим:
MySql -u root -p
Система предлагает ввести пароль пользователя root MySql, который был задан при установке MySql в Linux. (Примечание: Это пароль пользователя root системы MySql, а не пользователя root системы Linux). Введите пароль,
который не изображается на экране по соображениям безопасности.
После успешной регистрации, система выводит приветствие и приглашение
MySql, как показано на рис.3.3
Рис. 3.3. Приветствие системы
(Вас приветствует монитор MySql. Команды заканчиваются символами ; или
\g. id соединения с MySql равен 1 для сервера версии: 5.01.01. Введите 'help',
чтобы получить справку).
3. Теперь можно создавать базу данных employees. Выполните команду: create database employees;
(Примечание: команда заканчивается точкой с запятой)
