- •Практическое занятие №3 Работа с сервером MySql при помощи терминального клиента mysql.Exe Теоретические сведения Введение
- •Подсоединение к серверу и отсоединение от него
- •Создание пользователей MySqLи назначение прав доступа
- •Использование mysqlв пакетном режиме
- •Выполнение запросов
- •Создание и выбор базы данных
- •Работа с таблицами Типы данных столбцов
- •Просмотр существующих таблиц
- •Создание таблицы
- •Просмотр структуры таблицы
- •Модификация структуры таблицы
- •Переименование таблицы
- •Добавление данных в таблицу
- •Обновление (модификация) данных в таблице
- •Удаление строк в таблице
- •Удаление таблицы
- •Определение ключей в бд Определение первичных ключей
- •Определение внешних ключей
- •Задание
- •Содержание отчета
Практическое занятие №3 Работа с сервером MySql при помощи терминального клиента mysql.Exe Теоретические сведения Введение
Утилита mysql.exe(иногда называемая также «терминальным монитором» или просто «монитором») входит в комплект поставки сервераMySQLи представляет собой интерактивную программу, позволяющую подсоединяться к MySQL-серверу, запускать запросы, и просматривать результаты. Программаmysqlможет работать и в пакетном режиме: для этого необходимо записать все запросы в файл, а затем передать его содержимое на исполнениеmysql.
Увидеть список команд программы mysql можно, запустив ее с параметром --help:
C:\> mysql --help
Подробные сведения и обучающий курс по работе с утилитой MySQLможно найти в документации поMySQL(Глава 3. Учебное пособие по MySQLhttp://www.mysql.ru/docs/mysql-man-4.0-ru/tutorial.html).
Целью данной лабораторной работы является изучение основных приемов работы и выполнение действий по созданию и работе с БД на сервере MySQLв терминальном режиме.
Подсоединение к серверу и отсоединение от него
При подключении к серверу с помощью mysqlобычно нужно ввести имя пользователя MySQL и, в большинстве случаев, пароль. Если сервер запущен не на том компьютере, с которого вы вошли в систему, необходимо также указать имя хоста. Параметры соединения (а именно - соответствующее имя хоста, пользователя и пароль) вы сможете узнать у администратора (преподавателя). Получив соответствующие параметры, подсоединиться к серверу можно, выполнив в командной строке команду:
mysql -h host -u user -p
После установки соединения можно в любой момент отключиться от сервера, набрав в командной строке mysql>командуQUIT или EXIT.
Для того чтобы каждый раз не вводить параметры соединения, для запуска MySQLудобно создать командный файл (batch-файл), который может иметь следующее содержание:
@Echo off
Rem Здесь нужно установить требуемые значения
Rem ==========================================
SET MyPath="c:\Program Files\MySQL\MySQL Server 6.0"
SET MyHost=localhost
SET MyUser=root
SET MyPassword=pass
Rem ==========================================
%MyPath%\bin\mysql -h %MyHost% -u %MyUser% --password=%MyPassword%
pause
Создание пользователей MySqLи назначение прав доступа
Создание пользователей и назначение им прав доступа выполняет администратор сервера MySQL (преподаватель). Для разграничения прав доступа на объекты, создаваемые различными пользователями при выполнении лабораторных работ, целесообразно использовать для каждого пользователя собственную базу данных. Создание базы данных выполняет администратор (преподаватель) или пользователь (см. п. 1.6). При этом если создание базы выполняет пользователь, то у него уже должны быть назначены соответствующие привилегии.
Создание пользователя и назначение привилегий для пользователя на определенную БД выполняется администратором (преподавателем) при помощи одной команды. Для создания пользователя и назначения ему всех привилегий на базу данных следует использовать команду:
grant all privileges on <имя_базы_данных>.* to <имя_пользователя>@"%" identified by '<пароль>';
После выполнения этой команды у пользователя появляется возможность создать базу с именем db1.
Пароль пользователя может быть задан как при его создании, так и позднее. Для задания пароля пользователя используется команда:
SETPASSWORDFOR<имя_пользователя> =PASSWORD('<пароль>');
В этой команде, в отличие от предыдущей, должна использоваться функция PASSWORD(), которая производит шифрацию пароля.