О STUDIO
EMS SQL Management Studio – это комплексное решение для администрирования и разработки баз данных. STUDIO представляет собой набор мощных инструментов для работы с базами данных, объединенных удобной, функциональной оболочкой. Разработчики по достоинству оценят возможность создания/редактирования/удаления любых объектов базы данных. Полезными для них будут инструменты сравнения БД, экспорта и импорта данных, генерации тестовых данных. Администраторам будут интересны инструменты для миграции БД, создания резервных копий и их последующего восстановления и, конечно, Планировщик, позволяющий автоматизировать большую часть работы администратора.
Такой вопрос, в основном, задают новички в администрировании и разработке баз данных. Они не могут понять, для чего нужно столько различных инструментов!? Мы хотим сказать, что с каждым днем ваш опыт будет расти, перед вами будут стоять новые, более сложные задачи, и для их решения вам будет необходимо иметь все больше инструментов. STUDIO содержит в себе ВСЕ необходимые инструменты для администратора или разработчика баз данных. STUDIO уже готова к вашему профессиональному росту! Более того, изучив и поняв инструменты STUDIO, вы сможете находить более простые, удобные и надежные решения ваших задач! Конечно, мы понимаем, что нашим продуктом пользуются не только профессионалы, поэтому в STUDIO включены многочисленные мастера, делающие работу легкой и приятной даже для новичка. Интерфейс STUDIO спроектирован так, чтобы многочисленные инструменты не мешались пользователю, а вызывались исключительно тогда, когда это необходимо. Наш опыт показывает, что подавляющее большинство пользователей очень быстро привыкают к нашим мощным продуктам, и мы не имеем никаких обращений от пользователей с просьбами сделать даунгрейд на более простой продукт.
1) Необходимо заново скачать инсталляционный пакет SQL Studio и установить ее на ту же машину, где установлена ваша версия SQL Studio. Новая версия будет установлена поверх старой с сохранением всех настроек.
2) Вы можете обновить компоненты с помощью опции SQL Studio Direct, доступной в программе (пункт главного меню Навигация/SQL Studio Direct). Во всплывающем окне появится список доступных обновлений. Нажмите Yes, чтобы скачать и установить эти обновления (наличие соединения с Интернетом обязательно). Вы также можете использовать кнопку «Обновить», расположенную на панели инструментов SQL Studio Direct. Кроме того, Вы можете настроить автоматическую проверку обновлений с помощью соответствующей кнопки.
В случае обновления компонентов одним из перечисленных способов дополнительной регистрации программы не потребуется.
Существует также еще одна возможность для обновления только SQL Manager’a. Вы можете скачать новую версию программы (Studio edition) со страницы загрузки продукта. Затем вам нужно будет распаковать архив в папку, где установлен SQL Manager (по умолчанию C:\Program Files\EMS\SQL Studio for MySQL\SQL Manager).
Регистрация и подключение БД
Да, STUDIO позволяет работать с неограниченным количеством БД одновременно. Это правило распространяется и на БД, работа с которыми ведется через SSH или HTTP-туннели. Единственное условие для этого - БД должна быть корректно зарегистрирована в репозитории баз данных.
Да, это возможно. Главное - это то, что сама STUDIO работает исключительно под управлением MS WINDOWS. Однако, под какой ОС работает MySQL сервер, не имеет никакого значения.
Используя наши продукты, вы можете работать с MySQL-серверами, расположенными как локально, так и удаленно, на любой платформе (Linux, Unix, Windows и др.), используя TCP/IP. Также вы можете соединяться с удаленными MySQL-серверами, используя SSH и HTTP туннели.
На первом шаге:
Хост - это хост, где расположен MySQL сервер с точки зрения HTTP сервера. Обычно HTTP и MySQL сервер расположены на одной машине и являются 'localhost'.
Порт - это порт MySQL сервера на удаленном узле, по умолчанию используется порт 3306.
Пользователь - это имя пользователя на MySQL сервере.
Пароль - это пароль пользователя на MySQL сервере.
Далее выберите опцию "Использовать туннелирование" и "HTTP туннель".
На втором шаге:
URL - это адрес, где находится скрипт emsproxy.php (например, http://mywebserver /emsproxy.php).
На первом шаге:
Хост - имя хоста, где расположен сервер MySQL с точки зрения сервера SSH. Если SSH и MySQL сервера установлены на одной машине, то он совпадает с хостом SSH, или он может быть 'localhost'.
Порт - порт сервера MySQL, его значение по умолчанию 3306.
Пользователь - имя пользователя сервера MySQL.
Пароль - пароль пользователя MySQL.
Имейте в виду, что имя хоста MySQL должно быть задано относительно сервера SSH. Например, если MySQL и SSH сервера установлены на одном компьютере, Вы должны указать localhost в качестве имени хоста вместо имени внешнего хоста или IP адреса.
Далее выберите опцию Использовать туннелирование и SSH туннель.
На втором шаге:
SSH хост - хост, где активирован сервер SSH.
SSH порт - порт, где активирован сервер SSH.
SSH пользователь - пользователь Linux машины. (Это пользователь Linux'a. Это не пользователь сервера MySQL.)
SSH пароль - пароль пользователя Linux'a.
(более подробная информация: https://dev.mysql.com/doc/refman/8.0/en/can-not-connect-to-server.html)
Если появляется ошибка вида “Access denied for user: root@somehost.somedomain” или "Host not allowed to connect to server", то причиной этого является отсутствие прав у пользователя для доступа к базе данных.
Чтобы правильно настроить соединение SSH, укажите следующие значения в соответствующих полях:
На странице/закладке "SSH":
Имя хоста SSH - хост, где запущен сервер SSH.
SSH порт - порт, где запущен сервер SSH.
Имя пользователя SSH - пользователь компьютера с Linux ОС. (Это пользователь Linux. Это не пользователь сервера MySQL).
SSH пароль - пароль пользователя Linux.
На странице/закладке "Свойства соединения/Общие" (Connection properties/General):
Хост - хост, где находится MySQL сервер с точки зрения сервера SSH. Если серверы SSH и MySQL находятся на одном компьютере, хост равен SSH Host, либо может быть локальным 'localhost'.
Порт - порт MySQL сервера на удаленном хосте (Remote Host), по умолчанию равен 3306.
Имя Пользователя - имя пользователя MySQL.
Пароль - пароль пользователя MySQL.
Имейте в виду, что в этом случае имя хоста MySQL должно быть указано по отношению к серверу SSH. Например, если и MySQL и SSH серверы находятся на одном компьютере, вы должны в качестве имени хоста указать localhost вместо внешнего имени хоста сервера или адреса IP.
Для решения этой проблемы вы должны дать необходимые полномочия пользователю myuser@ myhost.mydomain. Вы можете сделать это с помощью phpMyAdmin, либо выполнив на сервере sql команды:
/*!50003 CREATE USER ‘myuser’@ ‘myhost.mydomain’*/;
GRANT ALL PRIVILEGES ON *.* TO ‘myuser’@ ‘myhost.mydomain’ IDENTIFIED BY 'user_password';
Либо обратитесь к вашему системному администратору.
(https://dev.mysql.com/doc/refman/8.0/en/error-access-denied.html)
/*!50003 CREATE USER 'user'@'user_host'*/;
GRANT ALL PRIVILEGES ON *.* TO 'user'@'user_host' IDENTIFIED BY ' user_password ';
(https://dev.mysql.com/doc/refman/8.0/en/error-access-denied.html) откроет полный доступ пользователю с вашего хоста.
Причина ошибки в том, что программа не может найти клиентскую библиотеку libmysql.dll, необходимую для работы с сервером. Данный файл libmysql.dll входит в комплект установки Studio. Вероятно, вы случайно удалили этот файл либо перенесли выполняемый файл программы в другую папку.Для решения данной проблемы вы должны переустановить Studio (все настройки будут сохранены), либо скопировать libmysql.dll из установочной папки в папку, где находится выполняемый файл.
Операции с объектами
В целях повышения скорости работы и удобства Сетка Данных позволяет производить гибкую настройку многих параметров отображения данных. Ниже приведены наиболее важные из них (пункт меню "Настройки/Настройки окружения"):
На закладке Сетка:
- Ограничения в редакторах. При включении опции “Выбирать все записи из таблицы” вы будете иметь возможность видеть все записи таблицы без дополнительных запросов к серверу, однако для больших таблиц или при низкоскоростном канале связи возможны значительные задержки при получении данных, также входящий трафик может быть большим. Режим рекомендуется при работе с базами данных, расположенными локально либо в частной сети. Режим “Выбирать только” ограничивает максимальное число записей, возвращаемых в результате запроса. Режим обусловлен тем, что человек не способен осмысленно просмотреть огромный объем информации за один раз. Для запроса и отображения следующей порции данных служит кнопка "Далее" в панели инструментов "Сетка Данных". Данный режим значительно ускоряет просмотр данных таблицы, предотвращает зависание и разрыв соединения при таймауте. Рекомендуется для работы с большими таблицами, при низкоскоростных каналах связи и когда объем трафика имеет значение. Данный режим включен по умолчанию. При данном режиме очень полезны опции “Использовать сортировку SQL” и “Использовать фильтр SQL”.
На странице "Сетка/Настройки данных":
- Режим Сетки по умолчанию. Данная опция определяет, будут ли все строки запроса загружаться в сетку сразу ("Загружать все строки"), либо по мере необходимости ("Загружать видимые строки"), т.е. когда пользователь пролистывает данные в таблице. Первый режим увеличивает время открытия результата запроса, но уменьшает задержки при пролистывании. При втором режиме время открытия результата запроса минимально, но возникают задержки при навигации по сетке.
- Использовать сортировку SQL при просмотре данных. При включенной опции при задании пользователем сортировки данных на сервер отправляется новый запрос, результат которого заново отображается в сетке. Очень полезна опция при включенном режиме - “Выбирать только”, но она увеличивает трафик. При отключенной опции сортировка выполняется на клиенте без участия сервера, но только в уже загруженных данных. Т.е. если указано "Выбирать только 1000 записей", то отсортируются только эти записи.
- Использовать фильтр SQL при просмотре данных. При включенной опции фильтрация данных будет производиться на сервере, куда отправляется новый запрос, результат которого заново отображается в сетке.
Это тоже очень полезная опция при включенном режиме - “Выбирать только”, но она увеличивает трафик. При отключенной опции фильтрация выполняется на клиенте без участия сервера, но только в уже загруженных данных. Т.е. если указано "Выбирать только 1000 записей", то фильтр будет выбирать только из этих записей.
Для максимальной производительности при работе с большими таблицами мы рекомендуем установить следующие значения для опций:
- Выбирать только – Включено
- Загружать все строки – Включено
- Использовать сортировку SQL – Выключено
- Использовать фильтр SQL – Выключено
Данная ошибка означает, что определение внешнего ключа для измененной таблицы было сформировано неверно. Например, связанный столбец не появляется как первый столбец в некотором индексе, ни в родительской, ни в дочерней таблице, или типы соответствующих полей в родительской и дочерней таблицах не совпадают.
Вы можете использовать SHOW ENGINE INNODB STATUS для того, чтобы вывести подробное объяснение последней ошибки внешнего ключа InnoDB на сервере.
Запрос
Да, STUDIO имеет мощный визуальный конструктор запросов, позволяющий даже новичку строить достаточно сложные запросы, а профессионалу тратить на это значительно меньше времени. Вам только необходимо указать, какие таблицы участвуют в запросе, как они связаны между собой и какие данные вы хотите получить. Визуальный конструктор сам составит текст запроса. Вам останется только выполнить его. Вы сразу же можете увидеть результат выполнения запроса и внести, в случае необходимости, изменения в запрос. Изменения можно делать как в визуальном редакторе, так и в текстовом. Причем изменения, сделанные в тексте запроса, будут отображены в визуальном редакторе, и наоборот.
1. ВСЕ выполненные запросы автоматически сохраняются в Истории. Вы можете просмотреть Историю и выполнить любой запрос еще раз, либо отредактировать его.
2. Наиболее часто используемые запросы вы можете поместить в список фаворитных запросов.
3. Вы можете сохранить любой запрос как SQL-скрипт в файл на диске и позднее загрузить его, либо выполнить с помощью консольного инструмента SQL скрипт.
4. Вы можете сохранить ваш запрос вместе с диаграммой. В этом случае в будущем, после загрузки этого запроса в STUDIO вы увидите диаграмму запроса такой, какой вы ее создали.
5. STUDIO позволяет сохранить диаграмму запроса как рисунок bitmap.
Да, конечно. STUDIO имеет мощный инструмент для экспорта данных (в том числе и результатов запроса). Кроме указанных вами форматов STUDIO позволяет выполнить экспорт в файлы следующих типов: MS Access, MS Word, HTML, RTF, DBF, XML и другие. Для облегчения настройки операции экспорта STUDIO содержит дружественный Мастер Экспорта Данных.
Дизайнер отчётов
Операции с данными
1. Экспорт/импорт данных из/в таблицы разных баз данных одного хоста.
2. Экспорт/импорт данных из/в таблицы разных баз данных разных хостов.
3. Наличие консольной утилиты, позволяющей, например, выполнять операции экспорта/импорта в автоматическом режиме с помощью Планировщика STUDIO.
4. Использование общего репозитория зарегистрированных баз данных.
Выберите базу данных в Проводнике и щелкните на ней правой кнопкой мыши, затем в появившемся меню выберете "Информация о регистрации" (вы также можете найти этот пункт в главном меню "База данных"). Откроется окно со свойствами базы данных.
Нажмите на закладку "Каталоги".
В секции "Каталог по умолчанию для экспортируемых данных" вы можете выбрать директорию по умолчанию для экспортируемого файла.
Мы рекомендуем вам использовать провайдер Microsoft Jet 4.0 OLE DB для соединения с вашей базой данных MS Access.
Для миграции из ODBC источника данных вам нужно использовать Data Pump for MySQL. Для запуска Data Pump из STUDIO выберите закладку Манипулирование данными и кликните на Data Pump for MySQL, или выберите Пуск->Программы->EMS->SQL Studio for MySQL->Data Pump for MySQL->Data Pump for MySQL.
В утилите вы должны использовать OLE DB провайдер для ODBC драйверов для соединения c вашим источником данных ODBC.
Да, конечно. При генерации тестовых данных STUDIO учитывает все связи и ограничения, уже имеющиеся в базе данных.
Анализ данных
Для запуска DB Comparer из STUDIO выберите закладку Анализ данных и кликните на DB Comparer for MySQL.
Для синхронизации данных вы можете использовать инструмент Data Comparer for MySQL.
Для запуска Data Comparer из STUDIO выберите закладку Анализ данных и кликните на Data Comparer for MySQL.
Резервное копирование и восстановление
STUDIO поддерживает несколько способов резервного копирования баз данных.
1) С помощью Мастера резервного копирования. Данный метод подходит только для резервного копирования MyISAM таблиц. Отличается высокой скоростью выполнения операции и надежностью. При выполнении резервного копирования данным способом MyISAM таблицы, выбранные пользователем, блокируются (SQL команда LOCK TABLES), и затем файлы, в которых физически хранятся структура (.frm) и данные (.MYD) выбранных MyISAM таблиц, копируются по указанному пути (SQL команда BACKUP TABLE), который может быть локальной директорией на сервере, либо совместно используемой папкой в сети. Данный путь указывается с точки зрения сервера, на котором установлен MySQL. Для вызова данной службы откройте закладку "Управление базами данных" в STUDIO и выберите "Backup Tables". Для вызова Мастера резервного копирования из SQL Manager for MySQL используйте "Обслуживание/Резервное копирование таблиц". Для восстановления таблиц из созданных этим методом резервных копий используется Мастер восстановления таблиц, который восстанавливает MyISAM таблицы (SQL команда RESTORE TABLES), предварительно сохраненные по указанному пути Мастером резервного копирования. Мастер восстановления таблиц не перезаписывает существующие на сервере таблицы.
2) С помощью утилиты DB Extract for MySQL, либо Мастера извлечения базы данных в SQL Manager for MySQL. Оба этих инструмента создают резервные копии баз данных либо заданных пользователем объектов в форме SQL-скрипта. Генерируемый скрипт может содержать управляющие SQL команды, команды создания объектов и команды вставки данных. Основными преимуществами данного метода является возможность сохранения структуры БД и данных как полностью, так и частично, а также возможность гибкой настройки. Из недостатков следует выделить значительные время и трафик, которые может потребовать резервное копирование больших баз данных. Для вызова утилиты DB Extract откройте закладку "Анализ данных" в STUDIO и выберите DB Extract for MySQL. Для вызова Мастера извлечения базы данных откройте SQL Manager for MySQL и выберите "Инструменты/Извлечение базы данных" в главном меню. Для восстановления БД из созданного таким образом скрипта вы можете просто выполнить этот скрипт на MySQL сервере. Для этой цели вы можете использовать SQL Script for MySQL либо инструмент SQL-скрипт в SQL Manager for MySQL.
3) С помощью утилиты Data Export for MySQL или Мастера экспортирования данных. Данный способ подходит для резервного копирования данных любого вида таблиц. Используйте его, если вы хотите сохранить только данные, без сохранения структуры. Мы рекомендуем использовать CSV формат для резервного копирования данных. Для вызова утилиты Data Export откройте закладку "Управление данными" в STUDIO и выберите Data Export for MySQL. Для вызова Мастера экспортирования данных из SQL Manager for MySQL откройте вашу таблицу на закладке "Данные" и выберите "Экспортировать данные". Для восстановления данных из созданного таким образом файла вы можете использовать Data Import for MySQL или Мастер импортирования данных в SQL Manager for MySQL. Об отличиях между Data Import for MySQL и Мастером импортирования данных в SQL Manager for MySQL вы можете прочитать здесь.
4) С помощью Мастера сохранения данных в SQL Manager for MySQL. Очень похож на метод 3. Единственное отличие в том, что данные сохраняются в директорию на сервере, либо в совместно используемую папку в сети с помощью SQL команды SELECT INTO … OUTFILE. Данные сохраняются в CSV формате, но скорость выполнения данного вида резервного копирования (и восстановления) значительно выше, чем в случае с использованием утилиты Data Export, однако данный метод не позволяет сохранить файл в произвольный каталог на клиенте. Для вызова Мастера сохранения данных из SQL Manager for MySQL откройте вашу таблицу на закладке "Данные" и выберите "Сохранить в файл на сервере". Восстановление данных производится с помощью Мастера загрузки данных.
Мастер резервного копирования копирует для выбранных пользователем MyISAM таблиц файлы, в которых физически хранятся структура (.frm) и данные (.MYD) по указанному пути, который может быть локальной директорией на сервере, либо совместно используемой папкой в сети.
2) Резервную копию, созданную с помощью утилиты DB Extract for MySQL либо Мастера извлечения базы данных в SQL Manager for MySQL, можно восстановить на любом сервере, имеющем версию равную либо выше версии сервера, на котором была сделана резервная копия.
3) Данные, сохраненные с помощью утилиты Data Export for MySQL или Мастера сохранения данных в SQL Manager for MySQL можно восстановить в таблицу на MySQL сервере любой версии.
Управление шаблонами
Шаблоны в STUDIO предназначены для хранения параметров, необходимых для выполнения того или иного инструмента STUDIO. Благодаря шаблонам вы можете многократно выполнять одну и ту же операцию с помощью инструмента STUDIO без необходимости каждый раз вводить в мастере по 10-20 необходимых параметров. Хранимые в шаблоне параметры можно легко изменить или создать новый шаблон на основе существующего.
Для создания шаблона для инструмента Импорта вы можете запустить инструмент Импорта ("Запуск/Data Import" в главном меню). Затем, используя кнопку NEXT, заполнить все необходимые параметры для импорта. По достижении последнего шага мастера, используя кнопку "Настройки/Сохранить Шаблон", указать, куда и с каким именем вы хотите сохранить только что созданный шаблон.
Планировщик
Для разрешения таких конфликтов в каждом Шаге Задачи вы можете определить его таймаут. Если Шаг выполняется дольше, чем указано в его таймауте, то Шаг завершается с событием "По таймауту" и выполнение задачи продолжается в соответствии с заложенным вами алгоритмом.