FAQ

О STUDIO

EMS SQL Management Studio – это комплексное решение для администрирования и разработки баз данных. STUDIO представляет собой набор мощных инструментов для работы с базами данных, объединенных удобной, функциональной оболочкой. Разработчики по достоинству оценят возможность создания/редактирования/удаления любых объектов базы данных. Полезными для них будут инструменты сравнения БД, экспорта и импорта данных, генерации тестовых данных. Администраторам будут интересны инструменты для миграции БД, создания резервных копий и их последующего восстановления и, конечно, Планировщик, позволяющий автоматизировать большую часть работы администратора.

Такой вопрос, в основном, задают новички в администрировании и разработке баз данных. Они не могут понять, для чего нужно столько различных инструментов!? Мы хотим сказать, что с каждым днем ваш опыт будет расти, перед вами будут стоять новые, более сложные задачи, и для их решения вам будет необходимо иметь все больше инструментов. STUDIO содержит в себе ВСЕ необходимые инструменты для администратора или разработчика баз данных. STUDIO уже готова к вашему профессиональному росту! Более того, изучив и поняв инструменты STUDIO, вы сможете находить более простые, удобные и надежные решения ваших задач! Конечно, мы понимаем, что нашим продуктом пользуются не только профессионалы, поэтому в STUDIO включены многочисленные мастера, делающие работу легкой и приятной даже для новичка. Интерфейс STUDIO спроектирован так, чтобы многочисленные инструменты не мешались пользователю, а вызывались исключительно тогда, когда это необходимо. Наш опыт показывает, что подавляющее большинство пользователей очень быстро привыкают к нашим мощным продуктам, и мы не имеем никаких обращений от пользователей с просьбами сделать даунгрейд на более простой продукт.

 

Для начала работы с STUDIO вам необходимо скачать инсталляционный пакет. На компьютере с MS Windows запустить программу-инсталлятор. По окончании работы инсталлятора программа готова к использованию в триальном режиме. Вы можете использовать программу в триальном режиме в течение 30 дней. За это период вам необходимо принять решение о приобретении STUDIO. Оплатить STUDIO можно здесь. После оплаты вы получите по электронной почте регистрационный ключ, после ввода которого (Главное меню/Справка/Зарегистрировать) ваша копия STUDIO станет зарегистрированной.
Действительно, для решения какой-либо одной несложной задачи можно приобрести один или несколько наших инструментов. Однако покупая эти инструменты в составе STUDIO, вы получаете дополнительные возможности. Прежде всего, это возможность запускать инструменты студии из планировщика задач. Т.е. вы можете задать последовательность выполнения нескольких инструментов, указать, с какими параметрами должны быть выполнены инструменты, задать время и/или частоту выполнения и затем спокойно идти играть в боулинг :). Планировщик выполнит все ваши задачи, сохранит журналы выполненных инструментов и вышлет вам уведомление об удачном/неудачном завершении задачи на ваш электронный адрес. С помощью Планировщика вы реально можете автоматизировать большинство сервисных задач по обслуживанию вашей БД. Вторая возможность - это хранение всех зарегистрированных БД в одном репозитории. Таким образом, однажды зарегистрировав источник данных, вы можете использовать его во всех инструментах STUDIO. Это экономит ваше время и снижает вероятность ошибки. Третий, очень немаловажный момент, - это цена. Приобретая инструменты в составе студии, вы платите за них существенно меньше, чем при покупке отдельными продуктами. Скидка достигает 40%
 
Существует два основных способа обновить компоненты SQL 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 сервер, не имеет никакого значения.

Единый репозиторий баз данных позволяет после однократной регистрации базы данных иметь возможность обращаться к ней из разных инструментов STUDIO. Для сравнения, покупая ранее наши наборы инструментов (бандлы), вы должны были в каждом инструменте вводить информацию о соединении с источником данных. Это приводило к дополнительным затратам времени и ошибкам. Теперь в STUDIO такой проблемы нет.

Используя наши продукты, вы можете работать с MySQL-серверами, расположенными как локально, так и удаленно, на любой платформе (Linux, Unix, Windows и др.), используя TCP/IP. Также вы можете соединяться с удаленными MySQL-серверами, используя SSH и HTTP туннели.

HTTP туннелирование - это способ, при котором соединение и передача данных между программой и MySQL сервером происходит через протоколы HTTP/HTTPS, используя порт 80, через который работает обычный веб-браузер. Этот способ подходит для соединения с MySQL, расположенном на удаленном сервере хостинг провайдера, когда прямое соединение невозможно из соображений безопасности. Соединение через HTTP туннель выглядит следующим образом: все исходящие запросы и команды с клиентских программ кодируются и передаются по протоколу HTTP/HTTPS, используя порт 80, специальному скрипту, который декодирует их, передает MySQL серверу на обработку и возвращает обратно результат. Для использования этого способа на удаленном сервере должен быть установлен HTTP сервер (например, Apache) и PHP с подключенным расширением MySQL. Как правило, это программное обеспечение предлагают все хостинг-провайдеры, предоставляющие услуги хостинга на Linux платформах. Кроме того, вы должны разместить наш emsproxy.php скрипт на вашем веб-сервере так, чтобы иметь к нему доступ извне (например, поместить его в каталог, где находятся ваши остальные PHP скрипты). Если ваш веб-сервер удовлетворяет данным требованиям и скрипт установлен правильно, то при открытии http://<yourwebservername>/emsproxy.php в веб-браузере вы увидите “EmsProxy v1.31” (версия может меняться). Чтобы зарегистрировать базу данных, соединение к которой должно выполняться с использованием HTTP туннеля, вы должны задать следующие параметры в Мастере Регистрации Баз Данных в SQL Manager for MySQL:
На первом шаге:
Хост - это хост, где расположен MySQL сервер с точки зрения HTTP сервера. Обычно HTTP и MySQL сервер расположены на одной машине и являются 'localhost'.
Порт - это порт MySQL сервера на удаленном узле, по умолчанию используется порт 3306.
Пользователь - это имя пользователя на MySQL сервере.
Пароль - это пароль пользователя на MySQL сервере.
Далее выберите опцию "Использовать туннелирование" и "HTTP туннель".
На втором шаге:
URL - это адрес, где находится скрипт emsproxy.php (например, http://mywebserver /emsproxy.php).
SSH (Secure Shell Host) протокол используется для повышения компьютерной безопасности при работе с Unix-системами в Internet. SSH использует несколько алгоритмов шифрования разной степени надежности. Распространенность SSH связана еще и с тем, что многие Linux-подобные ОС (например, FreeBSD) включают в стандартную комплектацию SSH сервер. Для получения дополнительной информации вы можете посетить http://openssh.org. Опция SHH туннель в SQL Manager представляет собой средство организации безопасного доступа к MySQL серверам при работе по небезопасным каналам связи. Также вы можете использовать SSH туннель для доступа к удаленным MySQL серверам, если по каким-либо причинам порт 3306 закрыт для внешних подключений. Соединение через SSH туннель выглядит следующим образом. Сначала устанавливается соединение и производится процедура аутентификации между встроенным в SQL Manager SSH клиентом и удаленным SSH сервером, затем вся исходящая и входящая информация между программой и MySQL сервером передается через SSH сервер с использованием коммуникационного порта (обычно 22), а SSH сервер транслирует информацию уже непосредственно MySQL серверу. Чтобы зарегистрировать базу данных, соединение к которой должно выполняться с использованием SSH туннеля, вы должны задать следующие параметры при регистрации базы данных в SQL Manager for MySQL:
На первом шаге:
Хост - имя хоста, где расположен сервер 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.
Если из-за политики безопасности, принятой у вас в корпоративной сети или хостинг провайдером, вы не можете соединиться с вашим MySQL сервером напрямую через TCP/IP (например, этому мешает firewall), то для этой цели вы можете использовать опцию SSH или HTTP туннель в SQL Manager.
Есть несколько причин, по которым вы не можете соединиться с локальной базой данных. Если при попытке соединения выдается ошибка "Can't connect to MySQL server on 'localhost' (10061)", то вероятно, MySQL сервер установлен некорректно или сервис (обычно с именем mysql) не запущен. Чтобы проверить, запущен ли сервис, откройте Пуск->Панель управления->Администрирование->Службы и найдите службу с именем MySQL.
Если вы не можете ее найти, то вам нужно попытаться повторно установить MySQL; если же вы ее нашли, то запустите ее кнопкой "Запустить", либо используя пункт "Пуск" контекстного меню. Если появляется ошибка вида "Access denied for user 'root'@'localhost' (using password: YES)", то проверьте правильность ввода пароля пользователя root, если вы меняли его при установке. Если вы установили MySQL со значениями по умолчанию, то вы должны использовать имя пользователя root с пустым паролем и порт 3306 для соединения с сервером.
(более подробная информация: https://dev.mysql.com/doc/refman/8.0/en/can-not-connect-to-server.html)
Есть несколько причин по которым вы не можете соединиться с удаленной базой данных. Если появляется ошибка "Can't connect to MySQL server on ‘some host' (10061)", то возможно вы должны проверить правильность ввода имени хоста и порта, а также запущен ли удаленный сервер. В ряде случаев бывает, что порт, через который происходит соединение с MySQL сервером (обычно 3306), закрыт из соображений безопасности локальным firewall, корпоративным firewall или firewall на удаленном сервере. Часто бывает, что порт на удаленном сервере закрыт ISP, или поддержка протокола TCP/IP отключена на MySQL сервере. Выясните это у вашего системного администратора или ISP. Чтобы обойти это ограничение, вы можете использовать SSH и HTTP туннели (50, 55).

Если появляется ошибка вида “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.

MySQL сервер использует для аутентификации клиента его логин (myuser в вашем случае) и имя хоста, с которого он пытается установить подключение (myhost.mydomain в вашем случае). В вашем случае причина в том, что ваш пользователь ‘myuser’ с хоста ‘myhost.mydomain’ не имеет полномочий для доступа к вашему MySQL серверу. Вполне вероятно, что вы успешно соединялись с вашей базой с теми же параметрами (имя пользователя и пароль) в своих PHP скриптах, либо с помощью phpMyAdmin, но в этом случае MySQL сервер распознает вас как пользователя ‘myuser’ с хоста ‘localhost’, который имеет необходимые полномочия, и разрешает вам доступ.
Для решения этой проблемы вы должны дать необходимые полномочия пользователю 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
Данная ошибка вызвана отсутствием прав у вашего хоста на соединение с удаленным MySQL сервером. Пожалуйста, свяжитесь с вашим системным администратором или, если у вас есть доступ к MySQL серверу с GRANT привилегией, вы можете использовать оператор GRANT, чтобы добавить нового пользователя. Например, команда:
/*!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) откроет полный доступ пользователю с вашего хоста.
Наиболее вероятной причиной этой ошибки является то, что сервер разорвал соединение по таймауту. В этом случае вам нужно увеличить значение переменной wait_timeout при запуске mysqld. Также ошибка возникает в следующих случаях:- Кто-то (Администратор БД) прервал поток вашего запроса, используя команду KILL sql или mysqladmin kill. - Вы пытаетесь выполнить запрос после закрытия соединения с сервером. - Вы пытаетесь послать на сервер слишком большой запрос, например, вы работаете с очень большими BLOB полями, либо команда INSERT пытается вставить слишком много записей. Вы можете увеличить допустимый размер пакетов путем установки значения переменной max_allowed_packet, значение которой по умолчанию равно 1Мб. Если данная ошибка возникает при импорте данных либо при копировании базы данных, то вы можете уменьшить значение опции “Record count per each data block”.
Вероятно, наша программа пытается использовать какую-то старую версию клиентской библиотеки libmysql.dll. Используйте libmysql.dll только из комплекта установки Studio. Для решения этой проблемы вы должны переустановить Studio (все настройки будут сохранены).

Причина ошибки в том, что программа не может найти клиентскую библиотеку libmysql.dll, необходимую для работы с сервером. Данный файл libmysql.dll входит в комплект установки Studio. Вероятно, вы случайно удалили этот файл либо перенесли выполняемый файл программы в другую папку.Для решения данной проблемы вы должны переустановить Studio (все настройки будут сохранены), либо скопировать libmysql.dll из установочной папки в папку, где находится выполняемый файл.

Наиболее часто встречаются две причины данной ошибки. - Если вы используете SSH туннель при попытке соединения с вашей базой данных, то, вероятно, вы неверно указали хост MySQL. После установки успешного соединения с SSH сервером, запрос на соединение с MySQL сервером, инициированный со стороны SSH сервера, терпит неудачу. Проверьте значение хоста MySQL. Помните, что он должен быть указан относительно SHH хоста, и если они находятся на одном компьютере, то это значение должно быть ‘localhost’. - Данная ошибка возникает, если ваша библиотека Linux glibc требует более 128K размера стэка для определения IP по имени хоста. Такое имеет место в основном на системе RedHat 8.0 при версии MySQL ниже 4.0.10, но может произойти и на другой конфигурации. Чтобы решить данную проблему, добавьте/измените следующую строку в секции [mysqld] конфигурационного файла MySQL: set-variable = thread_stack=192k # значение переменной должно быть равно или больше 192K.
Наиболее вероятные причины этой ошибки: порт 3306, который используется MySQL, закрыт файерволом, установленным в вашей сети или у хостинг-провайдера, либо протокол TCP отключен на удаленном MySQL сервере, либо ваш пользователь и хост, с которыми вы пытаетесь произвести соединение, не имеет необходимых для этого полномочий.

Операции с объектами

Вы можете работать с любыми объектами баз данных MySQL, такими как таблицы, поля, индексы, представления, хранимые процедуры и функции, триггеры, UDF и события.
Пожалуйста, выберите опцию "Выбирать все записи из таблицы" на закладке "Сетка" диалога "Настройки/Настройки окружения". При этом помните, что на выборку всех записей из таблицы может потребоваться значительное время.

В целях повышения скорости работы и удобства Сетка Данных позволяет производить гибкую настройку многих параметров отображения данных. Ниже приведены наиболее важные из них (пункт меню "Настройки/Настройки окружения"):

На закладке Сетка:
- Ограничения в редакторах. При включении опции “Выбирать все записи из таблицы” вы будете иметь возможность видеть все записи таблицы без дополнительных запросов к серверу, однако для больших таблиц или при низкоскоростном канале связи возможны значительные задержки при получении данных, также входящий трафик может быть большим. Режим рекомендуется при работе с базами данных, расположенными локально либо в частной сети. Режим “Выбирать только” ограничивает максимальное число записей, возвращаемых в результате запроса. Режим обусловлен тем, что человек не способен осмысленно просмотреть огромный объем информации за один раз. Для запроса и отображения следующей порции данных служит кнопка "Далее" в панели инструментов "Сетка Данных". Данный режим значительно ускоряет просмотр данных таблицы, предотвращает зависание и разрыв соединения при таймауте. Рекомендуется для работы с большими таблицами, при низкоскоростных каналах связи и когда объем трафика имеет значение. Данный режим включен по умолчанию. При данном режиме очень полезны опции “Использовать сортировку SQL” и “Использовать фильтр SQL”.

На странице "Сетка/Настройки данных":
- Режим Сетки по умолчанию. Данная опция определяет, будут ли все строки запроса загружаться в сетку сразу ("Загружать все строки"), либо по мере необходимости ("Загружать видимые строки"), т.е. когда пользователь пролистывает данные в таблице. Первый режим увеличивает время открытия результата запроса, но уменьшает задержки при пролистывании. При втором режиме время открытия результата запроса минимально, но возникают задержки при навигации по сетке.
- Использовать сортировку SQL при просмотре данных. При включенной опции при задании пользователем сортировки данных на сервер отправляется новый запрос, результат которого заново отображается в сетке. Очень полезна опция при включенном режиме - “Выбирать только”, но она увеличивает трафик. При отключенной опции сортировка выполняется на клиенте без участия сервера, но только в уже загруженных данных. Т.е. если указано "Выбирать только 1000 записей", то отсортируются только эти записи.
- Использовать фильтр SQL при просмотре данных. При включенной опции фильтрация данных будет производиться на сервере, куда отправляется новый запрос, результат которого заново отображается в сетке.
Это тоже очень полезная опция при включенном режиме - “Выбирать только”, но она увеличивает трафик. При отключенной опции фильтрация выполняется на клиенте без участия сервера, но только в уже загруженных данных. Т.е. если указано "Выбирать только 1000 записей", то фильтр будет выбирать только из этих записей.

Для максимальной производительности при работе с большими таблицами мы рекомендуем установить следующие значения для опций:
- Выбирать только – Включено
- Загружать все строки – Включено
- Использовать сортировку SQL – Выключено
- Использовать фильтр SQL – Выключено

Вы можете создавать новые объекты, удалять и модифицировать существующие. Также можете копировать объекты между базами данных, расположенных как на одном, так и на разных серверах.

Данная ошибка означает, что определение внешнего ключа для измененной таблицы было сформировано неверно. Например, связанный столбец не появляется как первый столбец в некотором индексе, ни в родительской, ни в дочерней таблице, или типы соответствующих полей в родительской и дочерней таблицах не совпадают.
Вы можете использовать SHOW ENGINE INNODB STATUS для того, чтобы вывести подробное объяснение последней ошибки внешнего ключа InnoDB на сервере.

Вероятно, значение переменной “lower_case_table_names” равно 1. За дополнительной информацией об этой переменной обратитесь на сайт https://dev.mysql.com/doc/refman/8.0/en/identifier-case-sensitivity.html
Вы можете настроить любой из форматов отображения данных: integer, float, date, time и date/time в окне "Настройки окружения". Вы можете это сделать, используя Главное меню "Настройки/Настройки окружения/Сетка/ Цвета и Форматы".
Чаще всего данные отображаются таким образом в случае, если реальная кодировка данных не соответствует кодировке полей БД. Например, греческие символы хранятся в поле, для которого задана кодировка latin1. Если это так, то задайте значение ‘Windows charset’ в поле ‘Client charset’ диалога ‘Database Registration Info’. Если в этом случае данные отображаются корректно, то этот режим можно использовать в качестве временного решения, но необходимо помнить, что это неверная настройка БД – некорректно будут работать серверные сравнения и сортировки данных. Мы рекомендуем Вам обратиться в нашу техническую поддержку в этом случае.
Вкладки "DDL" в Редакторе таблиц и в Редакторе UDF доступны только для чтения. Они отображают SQL текст операций, производимых вами во вкладках "Поля", "Индексы" и прочих или через UDF. Чтобы изменить этот текст, вы можете скопировать его в буфер обмена и изменить его, используя Редактор SQL- скрипта.
Вероятно, у вас включена опция "Autofit column widths" на закладке "Сетка" диалога "Настройки/Настройки окружения". Попробуйте отключить ее.

Запрос

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

Да, визуальный конструктор запросов позволяет строить и сложные запросы, включая составные (оператор UNION) и вложенные (SUBQUERIES).
Да, конечно. Для того чтобы необходимый запрос можно было быстро найти и выполнить, STUDIO обладает следующими возможностями:
1. ВСЕ выполненные запросы автоматически сохраняются в Истории. Вы можете просмотреть Историю и выполнить любой запрос еще раз, либо отредактировать его.
2. Наиболее часто используемые запросы вы можете поместить в список фаворитных запросов.
3. Вы можете сохранить любой запрос как SQL-скрипт в файл на диске и позднее загрузить его, либо выполнить с помощью консольного инструмента SQL скрипт.
4. Вы можете сохранить ваш запрос вместе с диаграммой. В этом случае в будущем, после загрузки этого запроса в STUDIO вы увидите диаграмму запроса такой, какой вы ее создали.
5. STUDIO позволяет сохранить диаграмму запроса как рисунок bitmap.
Да. Для этого в состав STUDIO входит инструмент SQL скрипт, который в том числе может выполнить скрипт, сохраненный в файле. Эта возможность позволяет вам создавать запросы и отдавать их на выполнение Планировщику STUDIO. Планировщик выполнит ваш запрос строго в назначенное вами время и сообщит вам о результате выполнения.

Да, конечно. STUDIO имеет мощный инструмент для экспорта данных (в том числе и результатов запроса). Кроме указанных вами форматов STUDIO позволяет выполнить экспорт в файлы следующих типов: MS Access, MS Word, HTML, RTF, DBF, XML и другие. Для облегчения настройки операции экспорта STUDIO содержит дружественный Мастер Экспорта Данных.

Дизайнер отчётов

Вы можете использовать для создания отчета Мастер Создания Отчетов ("Создать-->Отчет") или Конструктор отчетов ("Инструменты/Конструктор отчетов"). Чтобы создать простейший отчет на основе запроса, вам нужно выбрать "Master Data band" на втором шаге мастера, дважды щелкнуть на нем, либо щелкнуть на кнопке "Edit" и задать запрос для вашего отчета. После этого настроить необязательные опции на оставшихся шагах и нажать "Готово".
Используйте Мастер Создания Отчетов, чтобы создать отчет на основе запроса. Для этого вам нужно нажать в панели инструментов Создать-->Отчет, затем нужно выбрать Master Data band на втором шаге мастера, дважды щелкнуть на нем, либо щелкнуть на Edit кнопке и задать запрос для вашего отчета. После этого настроить необязательные опции на оставшихся шагах и нажать Готово.
Откройте отчет для просмотра, дважды кликнув на нем мышкой в Проводнике баз данных, затем выберите “Save report as” в панели навигации или инструментов и выберите тип сохраняемого файла в поле “Save as type”.
Чтобы указать источник данных в отчете, вам нужно добавить форму диалога к отчету (меню "Правка/Добавить форму диалога" в Конструкторе отчетов), а затем перетащить компоненты базы данных и запроса из левой панели на форму и указать параметры запроса и соединения. После этого запрос появится в списке источников данных.

Операции с данными

Инструменты для экспорта/импорта, входящие в состав STUDIO, обладают большими возможностями по сравнению с одноименными функциями SQL Manager for MySQL.
1. Экспорт/импорт данных из/в таблицы разных баз данных одного хоста.
2. Экспорт/импорт данных из/в таблицы разных баз данных разных хостов.
3. Наличие консольной утилиты, позволяющей, например, выполнять операции экспорта/импорта в автоматическом режиме с помощью Планировщика STUDIO.
4. Использование общего репозитория зарегистрированных баз данных.
Для этого необходимо воспользоваться Мастером импорта. Он поможет установить все необходимые параметры для операции импорта. Более того, вы можете сохранить эти настройки для импорта в качестве шаблона и использовать их в будущем. Кроме CSV-файла вы можете выполнить импорт из MS Excel, MS Access, DBF, XML, TXT файлов.
Поля типа TEXT и LONGTEXT не экспортируются по умолчанию. Вам необходимо выбрать их вручную на закладке "Поля".
Чтобы изменить директорию, вам необходимо выполнить следующие шаги:
Выберите базу данных в Проводнике и щелкните на ней правой кнопкой мыши, затем в появившемся меню выберете "Информация о регистрации" (вы также можете найти этот пункт в главном меню "База данных"). Откроется окно со свойствами базы данных.
Нажмите на закладку "Каталоги".
В секции "Каталог по умолчанию для экспортируемых данных" вы можете выбрать директорию по умолчанию для экспортируемого файла.
Основное назначение консольных версий инструментов STUDIO - это выполнение некоторых сервисных операций с базой данных без непосредственного участия пользователя. Все консольные инструменты поддерживают конфигурационные файлы (шаблоны), созданные в их одноименных GUI-версиях. Файл шаблона содержит всю необходимую информацию для работы консольной версии инструмента. Имея консольную версию инструмента и шаблон, вы можете создать в Планировщике STUDIO задачу с необходимым временем выполнения и/или периодичностью. Конечно, вы можете использовать консольные версии инструментов STUDIO и в собственных приложениях автоматизации.
Вы можете использовать Data Pump for MySQL для этой цели. Для запуска Data Pump из STUDIO выберите закладку "Манипулирование данными" и кликните на Data Pump for MySQL, или выберите Пуск->Программы->EMS->SQL Studio for MySQL->Data Pump for MySQL->Data Pump for MySQL.
Мы рекомендуем вам использовать провайдер Microsoft Jet 4.0 OLE DB для соединения с вашей базой данных MS Access.
ODBC (Open DataBase Connectivity) — это открытый, стандартный интерфейс доступа к базам данных, разработанный фирмой Microsoft. Абсолютное большинство систем управления базами данных имеют собственный, либо разработанный сторонними производителями программного обеспечения ODBC драйвер.
Для миграции из 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.
С помощью утилиты Data Pump for MySQL вы можете мигрировать из любых баз данных, к которым вы можете подсоединиться, используя OLE DB провайдер (например, SQL Server, Oracle, MS Access, DB2 и др.), а также ODBC драйвер (MySQL, PostgreSQL, Interbase, Firebird, dbase файлы и др.).
 
STUDIO обладает мощным инструментом для генерации тестовых данных - Data Generator. Используя имеющийся мастер, вы можете настраивать такие параметры генерации, как количество генерируемых строк, диапазон значений для каждого поля, доля строк со значением NULL и др. Data Generator реализует случайную, инкрементную, по заданному списку значений генерацию данных и другие алгоритмы. Естественно, что все это обилие настроек STUDIO может сохранить как шаблон для будущего использования.

Да, конечно. При генерации тестовых данных STUDIO учитывает все связи и ограничения, уже имеющиеся в базе данных.

Наиболее вероятно, что причина данной ошибки в попытке послать на сервер команду INSERT со слишком большим числом значений. Чтобы решить эту проблему, вы можете уменьшить значение опции “Record count per each data block”, либо увеличить допустимый размер пакетов путем установки значения max_allowed_packet для переменной, значение которой по умолчанию равно 1Мб.

Анализ данных

 
Для этой цели STUDIO имеет инстумент Database Comparer (DB Comparer). Его интерфейс прост и понятен, но результаты работы просто впечатляют! Вам достаточно указать две базы данных, метаданные которых вы хотите сравнить, а также некоторые дополнительные параметры, такие как сравниваемые объекты БД, направление синхронизации и др. Результатом работы DB Comparer будет перечень найденных различий в метаданных этих двух БД и скрипт, с помощью которого вы можете синхронизировать одну базу с другой. Причем вы можете синхронизировать каждое отличие отдельно от всех остальных, применяя только необходимые изменения в нужном вам порядке. Помните, сколько времени уходило на поиск одного единственного, добавленного 2 месяца назад поля в таблицу? :)
Для этой операции вам необходимо запустить мастер Data Comparer и в качестве исходной базы данных указать существующую рабочую базу, а в качестве целевой базы данных указать базу данных вчерашнего бэкапа (ее необходимо предварительно восстановить на любом доступном MySQL сервере). Затем указать, данные в каких таблицах вы хотите сравнить. Далее следуйте по шагам мастера. Помните, что Data Comparer позволяет сравнивать данные в таблицах с неидентичными метаданными. После выполнения операции сравнения вы увидите список различий между вашими двумя базами данных и предложение выполнить синхронизацию данных либо от исходной базы данных к целевой, либо от целевой к исходной. Вы можете сохранить SQL-скрипт, выполняющий синхронизацию, в отдельный файл на диске и выполнить его позднее с помощью инструмента SQL скрипт (возможно, с использованием планировщика STUDIO).
Для синхронизации структуры баз данных вы можете использовать инструмент DB Comparer for MySQL.
Для запуска DB Comparer из STUDIO выберите закладку Анализ данных и кликните на DB Comparer for MySQL.
Для синхронизации данных вы можете использовать инструмент Data Comparer for MySQL.
Для запуска Data Comparer из STUDIO выберите закладку Анализ данных и кликните на Data Comparer for MySQL.
Да, для этого существуют консольные версии наших утилит - DB Comparer for MySQL Console Application и Data Comparer for MySQL Console Application. Все консольные инструменты поддерживают конфигурационные файлы (шаблоны), созданные в их одноименных GUI-версиях. Файл шаблона содержит всю необходимую информацию для работы консольной версии инструмента. Имея консольную версию инструмента и шаблон, вы можете элементарно выполнять синхронизацию из командной строки, не задавая множества параметров вручную.
Данная возможность не поддерживается нашими утилитами, поскольку они допускают синхронизацию данных и метаданных только между серверами одного типа, т.е. MySQL c 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) по указанному пути, который может быть локальной директорией на сервере, либо совместно используемой папкой в сети.

1) Резервную копию, созданную с помощью Мастера резервного копирования, можно восстановить на сервере, если его версия (мажорная и минорная) совпадает с версией сервера, на котором была сделана резервная копия. В других случаях возможны проблемы из-за различий в форматах MyISAM файлов в разных версиях MySQL.
2) Резервную копию, созданную с помощью утилиты DB Extract for MySQL либо Мастера извлечения базы данных в SQL Manager for MySQL, можно восстановить на любом сервере, имеющем версию равную либо выше версии сервера, на котором была сделана резервная копия.
3) Данные, сохраненные с помощью утилиты Data Export for MySQL или Мастера сохранения данных в SQL Manager for MySQL можно восстановить в таблицу на MySQL сервере любой версии.
 
Резервная копия, созданная с помощью Мастера резервного копирования, может находиться в локальной директории на сервере, либо в совместно используемой папке в сети.
Мастер резервного копирования может быть использован только для резервного копирования MyISAM таблиц. При выполнении резервного копирования данным способом MyISAM таблицы, выбранные пользователем, блокируются (SQL команда LOCK TABLES), и затем файлы, в которых физически хранятся структура (.frm) и данные (.MYD) выбранных MyISAM таблиц, копируются по указанному пути (SQL команда BACKUP TABLE), который может быть локальной директорией на сервере, либо совместно используемой папкой в сети. Данный путь указывается с точки зрения сервера, на котором установлен MySQL. Мастер извлечения базы данных в SQL Manager for MySQL либо утилита DB Extract for MySQL создают резервные копии баз данных либо заданных пользователем объектов в форме SQL-скрипта. Генерируемый скрипт может содержать управляющие SQL команды, команды создания объектов и команды вставки данных. Таким образом, Мастер резервного копирования использует возможности MySQL сервера для выполнения резервного копирования только структуры и данных MyISAM таблиц. Этот метод отличается высокой скоростью и надежностью, но не может поместить файлы резервных копий в произвольную папку на клиенте. Он подходит для полного резервного копирования баз данных, которые содержат только MyISAM таблицы и больше никаких других объектов, либо для частичного резервного копирования БД (только MyISAM таблиц). Основными преимуществами резервного копирования с помощью утилиты DB Extract for MySQL являются возможность сохранения структуры БД и данных как полностью, так и частично, а также возможность гибкой настройки. Из недостатков следует выделить значительные время и трафик, которые может потребовать резервное копирование больших баз данных.

Управление шаблонами

Шаблоны в STUDIO предназначены для хранения параметров, необходимых для выполнения того или иного инструмента STUDIO. Благодаря шаблонам вы можете многократно выполнять одну и ту же операцию с помощью инструмента STUDIO без необходимости каждый раз вводить в мастере по 10-20 необходимых параметров. Хранимые в шаблоне параметры можно легко изменить или создать новый шаблон на основе существующего.

Шаблон представляет из себя файл, в котором в определенном формате хранятся необходимые параметры. Файлы шаблонов могут располагаться в любом месте на диске компьютера, главное, что бы вы помнили, где они находятся :). Для облегчения задачи по хранению и поиску шаблонов STUDIO имеет менеджер шаблонов. Он позволяет вам зарегистрировать необходимые шаблоны в STUDIO и больше не задумываться о том, куда же вы сохранили нужный шаблон. Если вы создаете новый шаблон в студии, то менеджер шаблонов автоматически запомнит его месторасположение на диске. Все зарегистрированные шаблоны будут сгруппированы по инструментам, для которых они предназначены, и доступны вам в любой момент. Для запуска инструмента с выбранным шаблоном будет достаточно просто сделать двойной клик на шаблоне.
Менеджер шаблонов позволяет вам выполнить оба действия: просто удалить шаблон из списка зарегистрированных шаблонов либо, дополнительно, удалить и сам файл шаблона с диска компьютера.

Для создания шаблона для инструмента Импорта вы можете запустить инструмент Импорта ("Запуск/Data Import" в главном меню). Затем, используя кнопку NEXT, заполнить все необходимые параметры для импорта. По достижении последнего шага мастера, используя кнопку "Настройки/Сохранить Шаблон", указать, куда и с каким именем вы хотите сохранить только что созданный шаблон.

Планировщик

Да, конечно. Именно для таких ситуаций и предназначен Планировщик STUDIO. Планировщик может запускать на выполнение преварительно созданные вами Задачи. Вы можете настроить время запуска Задачи и периодичность ее запуска. Каждая Задача может состоять из неограниченного количества Шагов (элементарных действий). Задача должна состоять как минимум из одного шага. В вашем случае следует выполнить следующее: 1. Создать новую Задачу 2. Создать в этой Задаче 4 шага (Экспорт, Импорт, Бэкап, Бэкап). При создании этих шагов вам будет необходимо указать, в каких файлах шаблонов хранятся необходимые для работы инструментов параметры. 3. Создать в Планировщике Запланированную Задачу, использующую только что созданную (п.1) Задачу.
В окне редактирования Задачи есть закладка "Уведомления". Переключившись на нее, вы можете указать наиболее подходящий вам способ уведомления как об успехе выполнения Задачи, так и о неудачном ее завершении. В текущей версии STUDIO поддерживаются следующие виды уведомлений: NetSend, системный журнал приложений, электронная почта.
Да. При создании/редактировании каждого Шага Задачи вы можете определять, какой шаг должен выполниться далее. Причем для каждого из трех обрабатываемых событий (успешное выполнение шага, выполнение шага с ошибкой, завершение шага по таймауту) можно указать свой вариант продолжения работы Задачи.
Вся информация о запуске Задач фиксируется в журнале. Вам будет доступна информация не только о выполнении Задачи, но и входящих в нее Шагов. Более того, вы сможете посмотреть журнал приложения, выполненного в конкретном шаге. Это очень удобно при анализе причин неудачного завершения Задачи/Шага. Мощные фильтры журнала позволят отобразить только интересующие вас записи.

Для разрешения таких конфликтов в каждом Шаге Задачи вы можете определить его таймаут. Если Шаг выполняется дольше, чем указано в его таймауте, то Шаг завершается с событием "По таймауту" и выполнение задачи продолжается в соответствии с заложенным вами алгоритмом.

Для работы Планировщика необходимо, чтобы был запущен агент студии (иконка в панели задач). И конечно, компьютер должен оставаться включенным все время, в течение которого должны запускаться задачи.

Управление журналами

Да. STUDIO обладает удобным инструментом для работы с журналами. При создании любого Шага в Задаче вы можете указать месторасположение журнала выполняемой утилиты. При выборе инструментов, входящих в STUDIO, расположение журнала заполняется автоматически. Журналы выполненных шагов сохраняются во внутренней базе данных STUDIO и доступны вам через меню "Навигация/Журналы".
Если выполняемая утилита не имеет журнала, а выводит что-либо на экран (в текстовом режиме, а не в GUI), то STUDIO может сохранить этот экранный вывод в качестве журнала. Для этого при создании задачи поставьте галочку "Внести в журнал рабочий экран".
Журналы хранятся в STUDIO неограниченное время. Удалить ненужные журналы вы можете вручную с помощью STUDIO (закладка "Журналы").

Локализация

В настоящей версии оболочка STUDIO поддерживает следующие локализации: английскую, немецкую, русскую, французскую.