Ознакомиться с приложениями, включенными в состав СУБД MySQL. Получить навыки управления учетными записями пользователей и определения привилегий. Ознакомиться с утилитами, входящими в состав СУБД MySQL, получить навыки работы с ними.

Установка MySQL

Есть несколько вариантов установки, в зависимости от того, будете ли вы использовать СУБД на своём личном компьютере (что рекомендуется для полноценного освоения), или будете использовать компьютеры института.

Установка на личном компьютере

Вы можете воспользоваться тем же вариантом, что и для установки на компьютер института, но проще будет использовать специальный инсталлятор. Для установки на личном компьютере вы просто скачиваете с сайта http://dev.mysql.com/downloads/mysql/ MySQL installer — это стандартный установщик, при помощи которого вы установите MySQL так же, как любую другую прогрумму Windows. В процессе установке следует выбрать вариант «Developer Default», чтобы установить полный необходимый вам набор инстурментов. Все остальные параметры можно оставить по умолчанию. Пароль для администратора вы можете придумать сами.

ХОСТИНГ ДЛЯ СЕРВЕРА МАЙНКРАФТ С MYSQL

Установка на компьютере института

Скачать актуальный дистрибутив СУБД MySQL можно по адресу
https://dev.mysql.com/downloads/mysql/
Нам понадобится вариант Windows (x86, 64-bit), ZIP Archive. Скорее всего, вы так же можете получить его из сетевого диска, куда его предварительно скопировал преподаватель. В данном случае вы просто распаковываете скачанный архив к себе на локальный (не сетевой!) диск.

Запуск MySQL

Запуск на личном компьютере

В случае, если вы установили MySQL при помощи инсталлятора, то его запуск и остановка будут осуществляться через управление службами Windows. По умолчанию после установки сервис должен уже работать.

Запуск на компьютере института

Управление сервером будет осуществляться из командной строки. Для этого необходимо выполнить следующие команды (перейдя в папку MySQL):

    Сначала инициализируем базу:

binmysqld.exe —initialize —skip-log-syslog —standalone —console
binmysqld.exe —skip-log-syslog —standalone —console
Binmysql.exe -u root -p

Не забудьте переподключиться и проверить, что пароль поменялся! Выйти из консоли MySQL в консоль Windows можно командой

quit

Привилегии в MySQL

Для работы с базами данных в MySQL необходим пользователь, наделённый такими правами. То есть при подключении к базе данных Вы должны указывать логин пользователя и его пароль, и если доступ ему открыт, то он получит определённые права.

В MySQL существуют три группы привилегий: данные, структура, администрирование. Первая группа связана с изменением записей в таблицах, вторая группа связана с изменением структуры баз данных, а третья связана с администрированием, как бы это очевидно не звучало.

Теперь перейдём к рассмотрению каждой группы отдельно. И начнём с прав на управление данными в таблицах.

БЕСПЛАТНИЙ ХОСТИНГ МАЙНКРАФТ | 24/7 | #shorts !

  • SELECT — эта привилегия позволяет делать выборку (вытаскивание) записей из таблиц баз данных.
  • INSERT — привилегия, которая необходима для добавления новых записей в таблицу.
  • UPDATE — право, позволяющее обновлять записи в таблице.
  • DELETE — эта привилегия позволяет удалять записи из таблицы.
  • FILE — разрешает делать выборку записей и записывать данные в файл, а также считывать их оттуда.

Теперь перейдём к привилегиям пользователей MySQL, позволяющие изменять структуру таблицы и базы данных.

  • CREATE — привилегия, позволяющая создавать новые базы данных, а также новые таблицы в базе данных.
  • ALTER — привилегия, позволяющая переименовывать таблицы, вставлять новые поля в таблицу, удалять поля из таблицы, а также модифицировать их.
  • INDEX — разрешает создавать индекс по определённому полю и удалять его. О том, что это такое и для чего нужно мы поговорим в одной из следующих статей.
  • DROP — право, которое позволяет удалять либо таблицы, либо целые базы данных.
  • CREATE TEMPORARY TABLES — возможность создавать временные таблицы, которые хранятся во время сессии, а после окончания сессии данная таблица автоматически удаляется.
Читайте также:  Красный порох в Майнкрафте как называется

И последняя группа привилегий — это привилегии, связанные с администрированием баз данных.

  • GRANT — привилегия, которая позволяет создавать новых пользователей, а также менять права у существующих. Тут есть очень важная деталь: нельзя изменять значения привилегий, которыми сам не обладаешь. То есть если человек обладает привилегией GRANT, но не обладает привилегией SELECT, то он не может новым пользователям дать привилегию SELECT. Впрочем, это вполне логично.
  • SUPER — позволяет использовать команду «kill», то есть убить поток. Поток — это текущее подключение другого пользователя к базе данных.
  • PROCESS — привилегия, позволяющая выполнить команду «processlist», которая показывает список потоков.
  • RELOAD — позволяет открывать и закрывать файлы журналов, а также перечитывать таблицы привилегий пользователей.
  • SHUTDOWN — привилегия, позволяющая выполнить команду «shutdown», отключающая работу сервера.
  • SHOW DATABASES — разрешает просматривать все существующие базы данных.
  • REFERENCES — данная привилегия ещё не доступна, а только зарезервирована для использования в будущем.
  • LOCK TABLES — позволяет блокировать таблицы от указанных потоков.
  • EXECUTE — позволяет запускать хранимые процедуры.
  • REPLICATION CLIENT — даёт право получать местонахождение ведущего (master) и ведомых (slaves) серверов.
  • REPLICATION SLAVE — это привилегия, позволяющая читать ведомым журнала ведущего сервера.

И, наконец, специальные привилегии, связанные с ограничением на доступные ресурсы:

  • MAX QUERIES PER HOUR — максимальное количество запросов в час, которое может отправить пользователь.
  • MAX UPDATES PER HOUR — максимальное количество команд в час, которые каким-либо образом изменяют либо таблицу, либо базу данных.
  • MAX CONNECTIONS PER HOUR — максимальное количество подключений в час, которое может сделать пользователь.

Если значение вышеназванных пределов равны «0», то ресурсы для пользователя не ограничены.

Создание нового пользователя в MySQL

Ранее мы вносили все изменения в настройки MySQL под root-пользователем, имея полный доступ ко всем базам данных. Однако для случаев, когда могут потребоваться более жесткие ограничения, есть способы создания пользователей с особыми наборами прав доступа.

Давайте начнем с создания нового пользователя из консоли MySQL:

К сожалению, на данном этапе пользователь «newuser» не имеет прав делать что-либо с базами данных. На самом деле, даже если если пользователь «newuser» попробует залогиниться (с паролем «password»), он не попадет в консоль MySQL.

Таким образом, первое, что нам необходимо сделать, это предоставить пользователю доступ к информации, которая ему потребуется.

Звездочки в этой команде задают базу и таблицу, соответственно, к которым у пользователя будет доступ. Конкретно эта команда позволяет пользователю читать, редактировать, выполнять любые действия над всеми базами данных и таблицами.

Читайте также:  Команда спавнпоинт в Майнкрафте командный блок

Поле завершения настройки прав доступа новых пользователей, убедитесь, что вы обновили все права доступа:

FLUSH PRIVILEGES;

Теперь ваши изменения вступят в силу.

Назначение привилегий

Для назначения прав конкретному пользователю можно использовать следующую схему:

Если вы хотите дать доступ к любой базе данных или к любой таблице, поставьте звездочку (*) вместо названия базы данных или таблицы.

Каждый раз, когда вы изменяете права доступа, не забудьте использовать команду Flush Privileges.

Лишения прав доступа практически идентично их назначению:

По аналогии с использованием команды DROP для удаления базы данных, вы можете использовать эту команду и для удаления пользователя.

Для тестирования учетной записи созданного пользователя, разлогиньтесь с помощью команды:

quit

и залогиньтесь снова, введя в терминате следующую команду:

mysql -u [имя пользователя]-p

Основные утилиты MySQL.

В состав дистрибутива MySQL входят следующие утилиты:

  • mysqld
  • mysql
  • mysqladmin
  • mysqlaccess
  • mysqlshow
  • mysqldump
  • isamchk

Утилиты — это отдельные программы, которые находятся в папке bin, а не команды MySQL. Для их запуска вам нужно выйти из консоли MySQL (если вы в ней), и использовать обычную консоль Windows. Так же рекомендуется перед запуском утилит сменить текущую папку на ту, в которой у вас находится MySQL.

Утилиты mysqld и mysql были подробно рассмотрены ранее, поэтому возвращаться к ним не будем. Кратко рассмотрим остальные.

Mysqladmin

Утилита для администрирования сервера. Может использоваться администратором, а также некоторыми пользователями, которым предоставлены определенные привилегии, например – Reload_priv, Shutdown_priv, Process_priv и File_priv. Данная команда может использоваться для создания баз данных, изменения пароля пользователя(администратор может изменить пароль любому пользователю, а рядовой пользователь – только свой собственный), перезагрузки и остановки сервера, просмотра списка процессов, запущенных на сервере. Mysqladmin поддерживает следующие команды:

  • Create [database_name] Создает базу данных
  • Drop [database_name] Удаляет базу данных и все таблицы в ней
  • Reload Перезагружает сервер
  • Shutdown Останавливает работу сервера MySQL
  • Processlist Выводит список процессов на сервере
  • Status Выводит сообщение о статусе сервера

Пример использования mysqladmin для изменения пароля:

mysqladmin -u your_name -p password new_password

Следует заметить, что в случае использования mysqladmin для установки пароля, не требуется использование функции password().Mysqladmin сам заботится о шифровании пароля.

Mysqlaccess

Используется для проверки привилегий пользователя для доступа к конкретной базе данных. Общий синтаксис:

mysqlaccess [host] [user] [db] опции

  • -?, —help Справка
  • -u, —user=[username] Имя пользователя
  • -p, —password=[password] Пароль пользователя
  • -h, —host=[hostname] Имя хоста для проверки прав доступа
  • -d, —db=[dbname] Имя базы данных для проверки прав доступа
  • -U, —superuser=[susername] Имя суперпользователя(root)
  • -P, —spassword=[spassword] Пароль администратора
  • -b, —brief Выводит краткие сведения о таблице

Mysqlshow

Используется, чтобы показать, с какими базами данных работает сервер, какие таблицы содержит каждая БД и какие колонки есть в каждой таблице.Синтаксис:

mysqlshow [опции] [database [table [field]]]

  • -?, —help Справка
  • -h, —host=[hostname] Имя сервера
  • -k, —key Показать ключи для таблицы
  • -p, —password=[password] Пароль пользователя
  • -u, —user=[username] Имя пользователя
  • -p, —port=[port] Порт для связи
  • -V, —version Вывести информацию о версии

mysqlshow
mysqlshow mysql

Mysqldump

  • -#, —debug=[options] Вывести в протокол отладочную информацию. В общем виде ‘d:t:o, filename`.
  • -?, —help Справка.
  • -c, —compleat-insert Генерируйте полные инструкции insert (не исключая значений, которые соответствуют значениям столбца по умолчанию).
  • -h, —host=[hostname] Соединиться с сервером hostname.
  • -d, —no-data Экспорт только схемы информации (исключая данные).
  • -t, —no-create-info Экспорт только данных, исключая информацию для создания таблицы. Противоположность -d.
  • -p, —password=[password] Пароль пользователя, для соединения с сервером MySQL. Обратите внимание, что не должно быть пробела между -p и паролем.
  • -q, —quick Не буферизовать результаты запроса, дамп выдать непосредственно к STDOUT.
  • -u, —user=[username] Имя пользователя. Если не задано, используется текущий логин.
  • -v, —verbose Вывести подробную информацию относительно различных стадий выполнения mysqldump.
  • -P, —port=[port] Порт для связи.
  • -V, —version Информация о версии.
Читайте также:  Как в Майнкрафте создать печь

Вы можете направить вывод mysqldump в клиентскую программу MySQL, чтобы копировать базу данных. ПРИМЕЧАНИЕ: Вы должны убедиться, что база данных не изменяется в это время, иначе Вы получите противоречивую копию!

mysqldump -u root -p mysql user>mysql-1.sql
mysqldump -u root mysql>mysql-2.sql

Примечание флаг –p используется в случае, если пользователь наделен паролем.
После выполнения этой команды появился файл mysql-1.sql и mysql-2.sql. Загрузите их в текстовый редактор, чтобы поподробнее изучить.

Задание

  • Запустите сервер MySQL. Зарегистрируйте своего пользователя в консольном приложении, задайте ему права.
  • С помощью утилиты Mysqlshow выполните команду на просмотр структуры и состав таблиц базы Mysql.
  • Приведите в отчете её схему. С помощью утилиты Mysqldump получите полный дамп базы Mysql (данные и таблицы), а также отдельные дампы таблиц и данных.

Вопросы

  1. Каким способом возможен запуск серверной части СУБД.
  2. Что такое привилегия. Каково её предназначение.
  3. Какие основные утилиты входят в состав СУБД, какие функции они выполняют.

Источник: jehy.github.io

Установка MySQL на VDS/Dedicated Server

Мы теперь в Discord Мы рады объявить, что теперь у нас есть сервер Discord. В честь этого мы проводим розыгрыш!
Теперь вы можете легко связаться с нами и другими участниками сообщества,
обмениваться идеями и получать обновления о нашей деятельности. Присоединиться

Мы рады сообщить вам о нашей весенней распродаже, которая уже началась!
Улучшайте свой сервер, только лучшими, качественными плагинами и приватными сборками.
Купон для самых быстрых на 20%, для улучшения вашего аккаунта. (Действие купона ограничено.)

Источник: mineleak.pro

Как создать базу данных и пользователя MySQL

Если на вашем сервере не установлена какая-нибудь удобная панель администрирования и вам нужно добавить пользователя и базу данных mysql для создания сайта, сделать это можно через консоль.

Для начала подключитесь к серверу mysql.

# mysql -u root -p

При этом, будет запрошен пароль администратора.

Создаём базу данных:

mysql> CREATE DATABASE `db`;

name замените на имя базы данных.

Следующим шагом будет создание пользователя базы данных. В консоли напечатайте команду:

Здесь нужно заменить name на имя пользователя, а password — на пароль для этого пользователя.

Последний шаг — это выдача всех превилегий на базу данных для созданного пользователя. Выполните следующую команду, заменив db на имя базы, a name на имя пользователя.

Обновите превилегии командой:

mysql> FLUSH PRIVILEGES;

Источник: rusadmin.biz