
Практичне заняття №19
СУБД MySQL. Серверні сценарії і утиліти MySQL. Клієнтські сценарії і утиліти MySQL. Управління обліковими записами користувачів. Доступи та гранти (привілеї)
Мета роботи: Ознайомитися з додатками , включеними до складу СУБД MySQL. Отримати навички управління обліковими записами користувачів і визначення привілеїв. Ознайомитися з утилітами , що входять до складу СУБД MySQL , отримати навички роботи з ними.
Короткі теоретичні відомості
MySQL - це система управління базами даних.
База даних являє собою структуровану сукупність даних. Ці дані можуть бути будь-якими - від простого списку майбутніх покупок до переліку експонатів картинної галереї або величезної кількості інформації в корпоративній мережі. Для запису , вибірки та обробки даних , що зберігаються в комп'ютерній базі даних , необхідна система управління базою даних , якою і є MySQL. Оскільки комп'ютери чудово справляються з обробкою великих обсягів даних, управління базами даних відіграє центральну роль в обчисленнях . Реалізовано таке управління може бути по- різному - як у вигляді окремих утиліт , так і у вигляді коду , що входить до складу інших додатків.
MySQL - це система управління реляційними базами даних. У реляційній базі даних дані зберігаються не все скопом , а в окремих таблицях , завдяки чому досягається виграш у швидкості і гнучкості. Таблиці зв'язуються між собою за допомогою відносин , завдяки чому забезпечується можливість об'єднувати при виконанні запиту дані з декількох таблиць . SQL як частина системи MySQL можна охарактеризувати як мова структурованих запитів плюс найбільш поширений стандартний мову , що використовується для доступу до баз даних.
Програмне забезпечення MySQL - це ПЗ з відкритим кодом. ПЗ з відкритим кодом означає, що застосовувати і модифікувати його може будь-хто . Таке ПЗ можна отримувати по Internet і використовувати безкоштовно . При цьому кожен користувач може вивчити вихідний код і змінити його у відповідності зі своїми потребами .
Основні переваги MySql
Перелічимо основні гідності пакета MySQL :
Підтримка декількох одночасних запитів.
Оптимізація зв'язків з приєднанням багатьох даних за один прохід.
Записи фіксованої і змінної довжини.
ODBC драйвер в комплекті з вихідним текстом
Гнучка система привілеїв і паролів.
До 16 ключів в таблиці . Кожен ключ може мати до 15 полів.
Підтримка ключових полів і спеціальних полів в операторові CREATE .
Підтримка чисел довжиною від 1 до 4 байт ( ints , float , double , fixed ) , рядків змінної довжини і міток часу.
Інтерфейс з мовами C і perl .
Заснована на потоках , швидка система пам'яті.
Утиліта перевірки і ремонту таблиці ( isamchk ) .
Всі дані зберігаються у форматі utf8 .
Всі операції роботи з рядками не звертають уваги на регістр символів в оброблюваних рядках .
Псевдоніми застосовні як до таблиць , так і до окремих колонкам в таблиці . Всі поля мають значення за замовчуванням. INSERT можна використовувати на будь-якому підмножині полів. Легкість керування таблицею , включаючи додавання і видалення ключів і полів.
Основні утиліти MySQL.
До складу дистрибутива MySQL входять наступні утиліти:
• mysqld
• mysql
• mysqladmin
• mysqlaccess
• mysqlshow
• mysqldump
• isamchk
Mysqladmin
Утиліта для адміністрування сервера. Може використовуватися адміністратором, а також деякими користувачами, яким надані певні привілеї, наприклад - Reload_priv, Shutdown_priv, Process_priv і File_priv. Дана команда може використовуватися для створення баз даних, зміни пароля користувача (адміністратор може змінити пароль будь-якому користувачеві, а пересічний користувач - тільки свій власний), перезавантаження і зупинки сервера, перегляду списку процесів, запущених на сервері.
Mysqlaccess
Використовується для перевірки привілеїв користувача для доступу до конкретної бази даних.
Mysqlshow
Використовується, щоб показати, з якими базами даних працює сервер, які таблиці містить кожна БД і які колонки є в кожній таблиці.
Mysqldump
Програма mysqldump використовується для створення дампа змісту бази даних MySQL. Вона пише інструкції SQL в стандартний висновок. Ці інструкції SQL можуть бути перепризначено у файл. Можна резервувати базу даних MySQL, використовуючи mysqldump, але при цьому потрібно переконатися, що в цей момент з базою даних не виконується ніяких інших дій.
Інсталяція MySQL
Перші етапи установки однакові для всього сімейства операційної системи Windows.
Спочатку необхідно завантажити інсталяційний файл з сервера http://www.MySQL.com і розархівувати його в одну з директорій . Потім слід запустити файл setup.exe і слідувати інструкціям.
Дистрибутив для платформ Windows за замовчуванням встановлюється в каталог C: \ mysql , проте в будь-який час після установки можна вибрати інший каталог або перенести встановлені файли в інше місце без додаткової перестановки програми .
Варіанти установки MySQL під Windows
При установці на вибір адміністратору надається декілька варіантів установки : Typical (типова ) , Compact ( компактна ) або Custom (установка за вибором). При виборі установки " за вибором" додатково можна встановити файли заголовків , бібліотеки і тести.
Тепер приступимо до налаштування MySQL сервера.
Діалогове вікно вибору деталізованої налаштування MySQL Вибираємо деталізовану настройку - " Detailed Configuration " .
Відзначаємо пункт " Developer Machine " .( Адже ми розробники)
Задаємо тип баз даних MySQL
Вибравши пункт " Multifunctional Database " ,
можна працювати як з таблицями типу
InnoDB ( з можливістю використання транзакцій)
, так і з високошвидкісними MyISAM (як
правило для веб- розробок використовується
саме цей т
ип
таблиць) .
Задання директорії для зберігання таблиць
Діалогове вікно завдання максимальної кількості підключень У даному діалоговому вікні вибирається максимально можлива кількість підключень до сервера MySQL. При виборі " Decision Support ( DSS) / OLAP " , максимальна кількість підключень буде обмежено двадцятьма , чого більш ніж достатньо при установці сервера на домашньому комп'ютері і відсутності великої кількості одночасних підключень.
Включення підтримки TCP / IP , і завдання порту для MySQL -сервера Відзначивши " Enable TCP / IP Networking " ми включаємо підтримку TCP / IP з'єднань і вибираємо порт , через який вони будуть здійснюватися. Стандартним для сервера MySQL є порт 3306 . Відзначивши " Enable Strict Mode " , ми задаємо режим строгої відповідності стандарту SQL (дану опцію рекомендується залишати включеною ) .
Діалогове вікно завдання кодування Зверніть увагу на виставлення налаштувань даного вікна . Відзначивши " Manual Selected Default Character Set / Collation " і вибравши з спадаючого меню " cp1251 " визначаємо , що спочатку для таблиць буде використовуватися кодування Cyrillic Windows ( cp1251 ), що означає коректну роботу з російською мовою в даному кодуванні.
Вибір способу запуску MySQL -сервера Якщо відзначити " Install As Windows Service " , сервер запускатиметься в вигляді сервісу , що є рекомендованим способом запуску. Нижче, у випадаючому списку , задається ім'я сервісу. Далі , приберіть галочку поряд з " Launch the MySQL Server automatically " - ми будемо запускати сервер вручну. Також поставте галочку поряд з " Include Bin Directory in Windows PATH " - це дозволить встановити видимість директорії " bin " , для командного рядка.
Установка пароля для користувача root Встановіть пароль користувача " root " . Раджу зробити це. Поставте хоча б який-небудь простенький пароль , тільки не залишайте поле порожнім , це вбереже вас від можливих неприємностей надалі .
Фінальне діалговое вікно установки MySQL -сервера В даному вікні зверніть увагу на рядок " Write configuration file " , яка вказує на місце розташування конфігураційного файлу MySQL - " my.ini ", далі , його необхідно буде трохи відредагувати . Enable root access from remote machines надає доступ користувачеві root, який має розширені права з віддалених машин.
Якщо планується використовувати MySQL спільно з іншими додатками під Windows , то знадобиться ODBC -драйвер для MySQL. Його можна знайти на http://www.mysql.com/downloads/api-myodbc.html .