![]() ![]() колонтитул в word 2007, 0000002111
Документация по MySQL 4, 5 на русском языкеПричина возникновения названия MySQL остается неясной. С одной стороны, разработчики в процессе написания программ ко многим директориям и именам файлов традиционно добавляли префикс "my". С другой стороны, имя дочери одного из разработчиков - My. Какой из этих фактов стал причиной такого названия, остается загадкой даже для разработчиков, не говоря уже о нас, простых смертных Как только мы задумываемся об упорядоченном хранении информации, неизбежно приходим к мысли о создании базы данных. Создав ее, например, в Microsoft Access, мы облегченно вздыхаем и на какое-то время успокаиваемся. Но это "какое-то время" длится недолго - на горизонте уже маячит следующая, продиктованная жизненной необходимостью задача: нужно обеспечить доступ к данным через интернет с рабочих станций, на которых, вполне возможно, установлены различные ОС. И вот тут на помощь приходит быстрая и надежная СУБД MySQL. Эта СУБД ведет свое начало от mSQL. Разработчики нуждались в более быстрой, надежной и гибкой СУБД. В результате был создан новый SQL-интерфейс при почти не измененном API-интерфейс mSQL. Этот API был выбран, чтобы облегчить перенос программ других разработчиков. Вся мощь простотыSQL - это язык структурированных запросов (Structured Query Language), международ- ный стандарт языка для доступа к базам данных. MySQL - это, если смотреть в общем, SQL-сервер; иначе говоря - программа, которая принимает запросы, написанные на SQL, и отсылает обратно определенные ответы. Ответами могут быть: данные, количество строк, задействованных в запросе, или просто строка (например, "Привет, Мир!"). СУБД MySQL предоставляет в ваше распоряжение подмножество языка SQL, соответствующее спецификации ANSI SQL 92. Конечно, нам нужно как-то обеспечить доступ к MySQL. Это можно сделать или через клиент (как текстовый, так и графический), или через какой-то язык программирования. Ядро, на котором сформирован MySQL, представляет собой набор подпрограмм, которые уже много лет использовались в высокотребовательном окружении. Это богатый и полезный функциональный набор, в то время как MySQL все еще находится в разработке. Основные цели MySQL: быстродействие и ошибкоустойчивость. Эта СУБД прекрасно справляется с обработкой очень значительных массивов данных (большое количество пользователей сообщают о работе с тысячами и даже миллионами записей). В листах рассылок нередки сообщения об базах данных в несколько гигабайт. Кроме того, MySQL в запросах к большим таблицам превосходит многие другие системы. Она очень стабильна и превосходно работает даже в случаях, когда несколько сотен пользователей нуждаются в доступе к одним и тем же данным. Исходя из вышесказанного легко понять, почему MySQL пользуется такой популярностью у разработчиков веб-приложений. MySQL также очень масштабируема, работает на всем - от персональных компьютеров до больших многопроцессорных систем. Одно из замечательных свойств MySQL заключается в том, что пользователь имеет доступ к MySQL-серверу независимо от операционной системы, языка программирования или клиента, которым пользуется. Находясь на UNIX-системе, пользователь может связываться с MySQL-сервером, работающим на OS/2- и Windows-платформах. Для взаимодействия с MySQL-сервером можно использовать множество языков программирования. Можно написать программы на C, C++, Java, PHP, Perl, TCL, Python - и они будут работать. В MySQL все организовано по схеме "ничего лишнего", поэтому и отсутствуют некоторые функции, которыми оснащены другие базы данных. MySQL не поддерживает вложенных запросов, тригерров; отсутствует также встроенная поддержка XML, OLAP и конструктов (constraits). Но зато есть новации (например, возможность кешировать запросы). Отсутствующие функции были принесены в жертву быстродействию, которое обеспечивает эта СУБД (хотя, если какие-то из этих функций все же понадобятся, можно использовать разработками сторонних производителей). Как поставил, так и держитсяТеперь, когда мы увидели, каким "навороченным" продуктом является MySQL, тем более хочется попробовать его в деле, поставить и пощупать все своими руками. Этим и займемся. В связи с возрастающим интересом к Linux-платформам, рассмотрим установку и работу с MySQL именно на такой платформе. Чтобы инсталляция MySQL проходила без особых затруднений, будем следовать рекомендациям, выложенным на сайте MySQL.
Приняв на вооружение эти рекомендации, запускаем на закачку файл "mysql-3.23.49a-pc-linux-gnu-i686.tar.gz" и спустя некоторое время получаем его. Перед началом установки создадим у себя группу и пользователя mysql: Shell>groupadd mysqlShell> useradd -g mysql mysql Далее распаковываем этот файл в каталог /usr/local: Shell> tar -zxf gunzip mysql-3.23.49a-pc-linux-gnu-i686.tar.gz Затем нужно сделать символическую ссылку mysql с каталога mysql-3.23.49a-pc-linux-gnu-i686: Shell> ln -s mysql-3.23.49a-pc-linux-gnu-i686 mysqlПричина этих действий заключается в том, что в скриптах прописаны именно эти каталоги. Теперь создадим каталог, в котором будут хранится базы. Для этого нужно всего лишь зайти в каталог mysql и запустить скрипт mysql_install_db, который находится в каталоге scripts: Shell>cd /usr/local/mysqlShell>scripts/mysql_install_db И последний штрих: с помощью команды safe_mysqld, которая находится в каталоге bin, запускаем сервер. Если очень хочется, чтобы запуск происходил при каждой загрузке системы, надо поместить запуск safe_mysql в один из файлов инициализации системы. В качестве примера: дописываем в /etc/rc.d/rc.local строчку /usr/local/mysql/bin/safe_mysqld &. Но, если просто записать эту строку в rc.local, mysql не захочет запускаться при загрузке системы. И вот, пошаманив немного над файлом safe_mysqld, я обнаружил, что в некоторых местах нужно заменить libexec на bin и var на data. Вот строки (начиная с 87), которые подверглись изменениям: MY_BASEDIR_VERSION=$MY_PWD # Where libexec, share and var are После того как мы все поставили, нужно изменить владельца и группу созданных каталогов. Каталогу mysql и всем подкаталогам нужно назначить владельца root и группу mysql. Shell>chown -R root:mysql /usr/local/mysqlКаталогу баз данных назначаем владельца mysql и одноименную группу. Shell>chown -R mysql:mysql /usr/local/mysql/dataИ последний штрих в настройке - пропишем путь к исполняемым программам mysql в profile: PATH=$PATH:/usr/local/mysql/binНа сайте mysql можно скачать графические оболочки для работы с базами (mysqlgui и mycc). Только вот, установив эти оболочки, я пришел к выводу, что они не заменяют знание SQL и удобны только для отображения таблиц, находящихся в базе (кстати, для отображения мне больше понравился mycc - у него понятнее интерфейс, и с ним легче работать). Для связи с базой данных предназначена программа mysql. Это командный интерпретатор, который передает введенные команды СУБД. колонтитулы в word 2007, 000000211111 ![]() ![]() |