SQL - Structured Query Language - структурированный язык запросов
- международный стандарт языка баз данных, применяемый для создания, модификации и управления данными в реляционных базах данных. Произносится — эс-кью-эл
(es kju:' el).
На определенном этапе, перед всеми кто занимается Web- программированием встает вопрос хранения, сортировке, поиске, изменении и выводе необходимых данных в больших массивах информации, то есть - создании баз данных. Многие современные версии языков программирования, используемых для создания Web-приложений, имеют мощную встроенную поддержку операций с базами данных, но по прежнему наиболее популярной является MySQL.
Произносится — май эс-кью-эл
(mai es kju:' el).
MySQL - открытое программное обеспечение (распространяется с открытым исходным кодом), служащим для создания и управления реляционными базами данных SQL. В ней отсутствует поддержка некоторых основных SQL конструкций. Поэтому, используя только необходимые части языка SQL, была создана небольшая и достаточно быстрая реляционная СУБД - MySQL. Сервер MySQL предназначен как для критических по задачам производственных систем с большой нагрузкой, так и для встраивания в программное обеспечение предназначенного для массового распространения. В основном используемая для создания и управления базами данных на ресурсах, размещенных в сети Internet.
Программное обеспечение MySQL (TM) представляет собой очень быстрый многопоточный, многопользовательский надежный SQL-сервер баз данных (SQL - язык структурированных запросов). Сервер MySQL предназначен как для критических по задачам производственных систем с большой нагрузкой, так и для встраивания в программное обеспечение массового распространения.
MySQL. Руководство администратора
MySQL Administrator's Guide
Написана специалистами компании MySQL AB, является всеобъемлющим справочником по установке, обслуживанию и администрированию сервера баз данных MySQL. Практически - это официальная документация фирмы производителя. В книге рассмотрен весь спектр вопросов, касающихся администрирования MySQL, а также представлена информация, предназначенная для опытных пользователей и администраторов.
MySQL занимает лидирующие позиции среди множества систем управления базами данных с открытым исходным кодом. Благодаря высокой производительности и простоте настройки, богатому выбору API -интерфейсов, а также функциональным средствам работы с сетями, сервер MySQL стал одним из наиболее удачных вариантов для разработки Web-приложений, взаимодействующих с базами данных. Книга рассчитана на администраторов и разработчиков Web-приложений, студентов и преподавателей соответствующих дисциплин.
Версии MySQL 6.0 — являются существенной переработкой предыдущих версии MySQL, с целью повышения уровня безопасности и улучшения стабильности. Введены несовместимые, с предыдущими версиями, изменения.
Возможна установка MySQL6,0,8 на OS Windows 2000, XP, Vista, или Windows Server 2003 (32-бит).
Новые пользователи MySQL могут использовать мастер установки (Installation Wizard) и мастер конфигурации (Configuration Wizard), для установки MySQL на Windows. Они спроектированы таким образом, чтобы после установки и конфигурирования, немедленно приступить к использованию MySQL.
В MySQL мастер установки (Installation Wizard) и мастер конфигурации (Configuration Wizard) доступны в основных пакетах установки.
MySQL Command Line Client — Клиент Командной строки MySQL
Клиент командной строки mysql для создания, переименования, конфигурирования, внесения изменений и удаления баз данных и таблиц.
Пройдите путь (см. рисунок выше) -
Пуск - Все программы - MySQL- MySQL Server 6.0 - MySQL Command Line Client.
Появится окно DOS, с приглашением ввести пароль.
Введите пароль, который вы установили при инсталляции MySQL и нажмите Enter.
Введите пароль: ***
Добро пожаловать в монитор MySQL. Команды заканчиваются ; или \g.
Ваше подключение MySQL id 2
Версия сервера: 6.0.3-alpha-community MySQL Community Server (GPL)
Введите 'help;' или '\h' для получения справки. Введите '\c', чтобы очистить буфер.
mysql>
Команда, как правило, состоит из выражения SQL, заканчивающегося точкой с запятой. (Есть некоторые исключения, когда точка с запятой может быть опущена, например - QUIT - \q).
Enter password: *** Welcome to the MySQL monitor. Commands end with ' ; ' or ' \g'. Your MySQL connection id is 2 Server version: 6.0.8-alpha-community MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. Добро пожаловать в монитор MySQL. Команды заканчиваются ; или \g. Ваше подключение MySQL id 2 Версия сервера: Сервер Сообщества MySQL (GPL) Введите 'help;' или '\h' для получения справки. Для очистки буфера введите '\c'. mysql> \h For information about MySQL products and services, visit: http://www.mysql.com/ For developer information, including the MySQL Reference Manual, visit: http://dev.mysql.com/ To buy MySQL Network Support, training, or other products, visit: https://shop.mysql.com/ List of all MySQL commands: Note that all text commands must be first on line and end with ';' ? (\?) Synonym for `help'. Справка clear (\c) Clear command. connect (\r) Reconnect to the server. Optional arguments are db and host. delimiter (\d) Set statement delimiter. NOTE: Takes the rest of the line as new delimiter. ego (\G) Send command to mysql server, display result vertically. отобразить результат вертикально. exit (\q) Exit mysql. Same as quit. Выход из mysql. То же самое, что и quit. go (\g) Send command to mysql server. help (\h) Display this help. notee (\t) Don't write into outfile. print (\p) Print current command. prompt (\R) Change your mysql prompt. quit (\q) Quit mysql. rehash (\#) Rebuild completion hash. source (\.) Execute an SQL script file. Takes a file name as an argument. status (\s) Get status information from the server. tee (\T) Set outfile [to_outfile]. Append everything into given outfile. use (\u) Use another database. Takes database name as argument. charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets. warnings (\W) Show warnings after every statement. nowarning (\w) Don't show warnings after every statement. For server side help, type 'help contents' mysql>
mysql> SELECT VERSION(), CURRENT_DATE;
+-----------------------+--------------+ | VERSION() | CURRENT_DATE | +-----------------------+--------------+ | 6.0.3-alpha-community | 2008-02-16 | +-----------------------+--------------+ 1 row in set (0.00 sec)
mysql> SELECT SIN(PI()/2), (101+11 - 12)*5;
+-------------+-----------------+ | SIN(PI()/2) | (101+11 - 12)*5 | +-------------+-----------------+ | 1 | 500 | +-------------+-----------------+ 1 row in set (0.00 sec)
Команды MySQL не зависят от выбора регистра - SHOW DATABASES; = show tables;
USE таблица - сделать таблицу текущей базой.
SHOW TABLES - вывод списка таблиц в указанной базе данных
mysql> SHOW DATABASES;
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | test | +--------------------+ 3 rows in set (0.00 sec)
Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version: 6.0.8-alpha-community MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> use mysql Database changed mysql> show tables; +---------------------------+ | Tables_in_mysql | +---------------------------+ | backup_history | | backup_progress | | columns_priv | | db | | event | | func | | general_log | | help_category | | help_keyword | | help_relation | | help_topic | | host | | ndb_binlog_index | | plugin | | proc | | procs_priv | | servers | | slow_log | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+ 25 rows in set (0.25 sec) mysql>
INFORMATION_SCHEMA - "информационная схема". Цель этой базы данных заключается в том, чтобы предоставить информацию, описывающую структуру баз данных и их составных объектов: метаданных (данные о данных - информация о данных самой системы). Содержит данные, которые описывают базы данных и их структуры, то есть, схемы, списки информации о существовании и свойства базы данных, таблиц, столбцов и так далее. Не существует физически: сервер формирует метаинформацию динамически. Поэтому никакие манипуляции с ней невозможны.
Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 6.0.8-alpha-community MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> use information_schema; Database changed mysql> show tables; +---------------------------------------+ | Tables_in_information_schema | +---------------------------------------+ | CHARACTER_SETS | | COLLATIONS | | COLLATION_CHARACTER_SET_APPLICABILITY | | COLUMNS | | COLUMN_PRIVILEGES | | ENGINES | | EVENTS | | FILES | | GLOBAL_STATUS | | GLOBAL_VARIABLES | | KEY_COLUMN_USAGE | | PARAMETERS | | PARTITIONS | | PLUGINS | | PROCESSLIST | | PROFILING | | REFERENTIAL_CONSTRAINTS | | ROUTINES | | SCHEMATA | | SCHEMA_PRIVILEGES | | SESSION_STATUS | | SESSION_VARIABLES | | STATISTICS | | TABLES | | TABLESPACES | | TABLE_CONSTRAINTS | | TABLE_PRIVILEGES | | TRIGGERS | | USER_PRIVILEGES | | VIEWS | | FALCON_RECORD_CACHE_SUMMARY | | FALCON_SYSTEM_MEMORY_DETAIL | | FALCON_TABLESPACE_IO | | FALCON_SYSTEM_MEMORY_SUMMARY | | FALCON_VERSION | | FALCON_TRANSACTION_SUMMARY | | FALCON_SERIAL_LOG_INFO | | FALCON_SYNCOBJECTS | | FALCON_TRANSACTIONS | | FALCON_RECORD_CACHE_DETAIL | +---------------------------------------+ 40 rows in set (0.02 sec) mysql>
INFORMATION_SCHEMA - единственная цель этой базы данных заключается в том, чтобы предоставить информацию о данных самой системы.
Enter password: ***
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 6.0.8-alpha-community MySQL Community Server (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
Сделать test текущей базой:
mysql> use test;
Database changed
Чтобы убедиться, что в базе данных - test ничего нет, введем:
mysql> show tables;
Empty set (0.00 sec)
Создание таблицы в MySQL
Используя команду CREATE TABLE определим структуру таблицы:
mysql> CREATE TABLE test (date DATE, time DATE, ipaddress VARCHAR(20), prishel CHAR(200), prosmotpel CHAR(200));
Query OK, 0 rows affected (0.02 sec)
mysq>
Проверить, правильно была ли создана таблица, можно введя команду MySQL:
mysql> DESCRIBE test;
Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 6.0.8-alpha-community MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | test | +--------------------+ 3 rows in set (0.00 sec) mysql> Use test; Database changed mysql> SHOW TABLES; +----------------+ | Tables_in_test | +----------------+ | test | +----------------+ 1 row in set (0.01 sec) mysql> CREATE TABLE test ( date DATE, time DATE, ipaddress VARCHAR(20), prishel CHAR(200), prosmotpel CHAR(200)); Query OK, 0 rows affected (0.02 sec) mysql> DESCRIBE test; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-------+ | date | date | YES | | NULL | | | time | date | YES | | NULL | | | ipaddress | varchar(20) | YES | | NULL | | | prishel | char(200) | YES | | NULL | | | prosmotpel | char(200) | YES | | NULL | | +------------+-------------+------+-----+---------+-------+ 5 rows in set (0.01 sec)
Формат поля date - DATE - '0000-00-00'. Видно, что использовать этот формат для хранения данных о времени неудобно. Рациональнее использовать TIME '00:00:00'. Типичная ситуация для начинающих работать с MySQL. Изменить тип поля time с DATE на TIME можно введя команду - ALTER TABLE test CHANGE time time TIME;
mysql> ALTER TABLE test CHANGE time time TIME; Query OK, 0 rows affected (0.09 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> DESCRIBE test; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-------+ | date | date | YES | | NULL | | | time | time | YES | | NULL | | | ipaddress | varchar(20) | YES | | NULL | | | prishel | char(200) | YES | | NULL | | | prosmotpel | char(200) | YES | | NULL | | +------------+-------------+------+-----+---------+-------+ 5 rows in set (0.01 sec)
Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 7 Server version: 6.0.8-alpha-community MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> SHOW FULL PROCESSLIST; +----+------+-----------------+------+---------+------+-------+-----------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------------+------+---------+------+-------+-----------------------+ | 7 | root | localhost:50407 | NULL | Query | 0 | NULL | SHOW FULL PROCESSLIST | +----+------+-----------------+------+---------+------+-------+-----------------------+ 1 row in set (0.00 sec) mysql>
mysql> INSERT INTO test VALUES ('1999-03-30', '19:03:30', '110.175.131', '/php01_523.shtml', '/sitemap.shtml');
select * from test; вывод всех записей из таблицы.
Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 6.0.8-alpha-community MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> Use test; Database changed mysql> DESCRIBE test; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-------+ | date | date | YES | | NULL | | | time | time | YES | | NULL | | | ipaddress | varchar(20) | YES | | NULL | | | prishel | char(200) | YES | | NULL | | | prosmotpel | char(200) | YES | | NULL | | +------------+-------------+------+-----+---------+-------+ 5 rows in set (0.00 sec) mysql> INSERT INTO test VALUES ('1999-03-30', '19:03:30', '110.175.131', '/php01_523.shtml ', '/sitemap.shtml'); Query OK, 1 row affected (0.01 sec) mysql> select * from test; +------------+----------+-------------+------------------+----------------+ | date | time | ipaddress | prishel | prosmotpel | +------------+----------+-------------+------------------+----------------+ | 1999-03-30 | 19:03:30 | 110.175.131 | /php01_523.shtml | /sitemap.shtml | +------------+----------+-------------+------------------+----------------+ 1 row in set (0.00 sec) mysql> exit
mysql> delete from test; Query OK, 53 rows affected (0.00 sec) mysql> DESCRIBE test; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-------+ | date | date | YES | | NULL | | | time | time | YES | | NULL | | | ipaddress | varchar(20) | YES | | NULL | | | prishel | char(200) | YES | | NULL | | | prosmotpel | char(200) | YES | | NULL | | +------------+-------------+------+-----+---------+-------+ 5 rows in set (0.01 sec)
Если, после ввода команды, появится приглашение MySQL:
— >
то чаще всего это говорит о том, что вы забыли поставить точку с запятой в конце команды.
Войдите в оснастку «Службы» - Пуск - Администрирование - Службы
Остановите службу - MySQL.
для Vista
Пуск\Панель управления \Администрирование
После распаковки дистрибутива mysql-6.0.3-alpha-win32.zip у вас должна сохраниться программа установки - Setup.exe
Запустите её и в мастере установки выберите пункт - Remove
Для удаления службы MySQL. - Remove
Начнется процесс удаления MySQL
Для окончания удаления MySQL нажмите кнопку - Finich.
Не забывайте удалять каталог C:\Program Files\MySQL\
Материал данной страницы связан с разделом сайта - Apache и PHP