FAQ

Настроить все отображаемые форматы (integer, float, date, time и date/time) можно в окне "Настройки окружения".

По умолчанию поля типов TEXT, LONGTEXT не экспортируются. Вы должны вручную выбирать эти поля в закладке "Поля/Fields".

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

Вероятней всего, что значение переменной “lower_case_table_names” равно 1. За дополнительной информацией об этой переменной обращайтесь: https://dev.mysql.com/doc/refman/8.0/en/identifier-case-sensitivity.html.

 

Функция “Экспортировать как SQL-скрипт” предназначена для экспорта табличных данных, которые будут вставлены в другую базу данных, отличную от сервера MySQL (SQL Server, Oracle, PostgreSQL etc.). Функция “Извлечение базы данных” используется для копирования данных в таблицы сервера MySQL.

Да, это возможно. Под какой ОС работает MySQL сервер, не имеет никакого значения. Главное - это то, что сам SQL Manager работает исключительно под управлением MS WINDOWS.

 

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

Для смены директории выполните следующие действия:

  • Щелкните правой клавишей мыши на необходимой базе данных в Проводнике БД и левой клавишей на "Регистрационная информация базы данных" во всплывающем меню (этот пункт Вы можете найти также в основном меню "База данных"). Откроется форма с параметрами базы данных.
  • Щелкните левой клавишей на закладке "Каталоги".
  • В секции "Каталог по умолчанию для экспортируемых данных" Вы можете выбрать директорию для экспорта файла.

 

Эта ошибка появляется в том случае, если Ваш Linux glibc требует больше, чем 128Кб-ный размер стэка для разрешения имени хоста. В основном, это происходит на системах с RedHat 8.0 и версией сервера MySQL ниже 4.1, но иногда встречается и на других конфигурациях. Чтобы решить эту проблему, добавьте/отредактируйте следующую строку в секции [mysqld] файла конфигурации MySQL: set-variable = thread_stack=192k # value must be 192K or higher

Чтобы получить источник данных в отчете, Вам нужно добавить диалоговую форму в отчет (меню 'Редактировать/Edit' 'Добавить форму диалога/Add dialog form' Конструктора Отчетов), затем поместить в нее базу данных и компоненты запроса из левой панели конструктора и установить связь и параметры запроса. После этого запрос должен появиться в списках источников данных.

Есть несколько причин, по которым вы не можете соединиться с локальной базой данных. Если при попытке соединения выдается ошибка "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).

EMS SQL Manager for MySQL – это высокопроизводительная программа для разработки и администрирования баз данных MySQL. SQL Manager for MySQL работает с любыми версиями MySQL, начиная с версии 4.1 поддерживает все самые новые функции MySQL, включая триггеры, представления, хранимые процедуры и функции, внешние ключи для таблиц InnoDB, UNICODE данные и другие. SQL Manager for MySQL позволяет быстро и просто создавать и редактировать все объекты баз данных MySQL, визуально проектировать базы данных MySQL, выполнять сценарии SQL, импортировать и экспортировать базы данных MySQL, управлять пользователями и их привилегиями, а также предоставляет множество полезных инструментов для эффективного администрирования MySQL. Современный графический интерфейс и грамотная система мастеров настроек предельно просты и будут понятны даже начинающему пользователю.

Такая ситуация может возникнуть, если у Вас нет прав на извлечение данных из таблицы ‘mysql.proc’. Обратитесь к администратору Вашего MySQL сервера для назначения необходимых прав. Если изменять настройки привилегий нельзя, и Вы используете MySQL 5.5 или выше, то попробуйте включить опцию ‘Use INFORMATION_SCHEMA database to refresh metadata’ диалога ‘Database Registration Info -> Options’

SSH (Secure Shell Host) протокол используется для повышения компьютерной безопасности при работе Unix-системами в Internet. SSH использует несколько алгоритмов шифрования разной степени надежности. Распространенность SSH связана еще и с тем, что многие Linux-подобные ОС (например, FreeBSD) включают в стандартную комплектацию SSH сервер. Для получения дополнительной информации вы можете посетить https://www.openssh.com. Опция 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 сервер использует для аутентификации клиента его логин ('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/privileges-provided.html)

Эти версии отличаются своей функциональностью. Поскольку SQL Manager Freeware – это бесплатное приложение, оно имеет ряд функциональных ограничений: максимальное количество зарегистрированных баз данных не может превышать 5, максимальный размер базы данных должен быть не более 100 МБ, и некоторые другие. Подробный список отличий вы можете найти на нашем сайте в Таблице Возможностей программы.

Помните, что внешние ключи поддерживаются не для всех механизмов хранения таблиц сервера MySQL. Если для Вашей таблицы задан механизм хранения, поддерживающий внешние ключи, например, InnoDB, то в редакторе должна быть доступна вкладка ‘Внешние ключи (Foreign Keys)’. Переключитесь на нее и выберите пункт навигационной панели ‘Добавить новый внешний ключ (Add new foreign key)’.

Для того чтобы правильно установить соединение через SSH, необходимо задать следующие параметры: 
На закладке SSH:
Хост SSH/SSH Host - это хост, где запущен сервер SSH. 
Порт/Port - номер порта, где запущен сервер SSH. 
Имя пользователя SSH/SSH User Name - это имя пользователя на сервере. (Пользователь сервера Linux. Это не имя пользователя сервера MySQL!) 
Пароль/Password - это пароль пользователя сервера Linux. 

На закладке Connection properties/General page: 
Хост/Host - это хост, на котором расположен сервер MySQL с точки зрения сервера SSH.Если серверы SSH и MySQL находятся на одном компьютере, хост равен SSH Host, либо может быть локальным 'localhost'. 
Порт/Port - порт MySQL сервера на удаленном хосте (Remote Host), по умолчанию равен 3306. 
Имя пользователя/User Name - имя пользователя на сервере MySQL.
Пароль/Password - это пароль пользователя на сервере MySQL.

Если из-за политики безопасности, принятой у вас в корпоративной сети или хостинг провайдером, вы не можете соединиться с вашим MySQL сервером напрямую через TCP/IP (например, этому мешает firewall), то для этой цели вы можете использовать опцию SSH или HTTP туннель в SQL Manager.

Во-первых, Вы должны иметь возможность подключиться к локальному или удаленному серверу MySQL. Во-вторых, Ваш компьютер должен соответствовать системным требованиям EMS SQL Manager for MySQL.

 

Если Вы хотите подключиться к серверу MySQL Вашего хостинг-провайдера через Интернет, пожалуйста, учтите, что наша программа устанавливает прямое TCP/IP подключение на порт сервера, в то время как большинство хостинг-провайдеров не разрешают такие удаленные подключения. Когда Вы подключаетесь к Вашей БД через CPanel, PHPMyAdmin или Ваши бэкэнд-скрипты (PHP, ASP и т.п.), то фактически подключение создается HTTP-сервером к MySQL серверу. В большинстве случаев это локальное подключение или подключение внутри подсети хостинг провайдера. Ваш Интернет браузер просто получает обработанные данные у HTTP-сервера в этом случае.
Для установки подключения к Вашей БД Вы должны выяснить (связываясь с Вашим хостинг-провайдером или изучив предоставляемую им документацию) поддерживают ли они прямое подключение на порт 3306 (порт MySQL по умолчанию) с машин удаленных пользователей. Если это не поддерживается, Вы должны выяснить, предоставляют ли они возможность подключения к удаленному серверу через SSH. Если да, то Вы можете использовать возможность SSH-туннелирования в SQL Manager, задавая параметры SSH авторизации, предоставленные Вашим хостинг провайдером. Если вышеописанные способы подключения не доступны, Вы можете использовать возможность HTTP-туннелирования в SQL Manager. 
Для подключения этим способом, Вы должны сделать следующее: 
1) Загрузить скрипт ‘emsproxy.php’ (который входит в дистрибутив SQL Manager) в корневую директорию Вашего сайта, используя доступный Вам FTP-аккаунт. Запустите Ваш браузер и укажите в строке адреса путь к загруженному 'emsproxy.php' (например: http://mysite.com/emsproxy.php). Вы должны увидеть страницу с сообщением 'The ‘emsproxy.php script is installed correctly'. Это значит, что скрипт работает корректно.
2) Запустите SQL Manager.
3) На первом шаге мастера 'Регистрация базы данных (Register Database)' укажите параметры подключения к Вашей базе данных MySQL, как Вы указываете их в PHPMyAdmin или в Ваших скриптах (например, укажите 'localhost' в поле 'Host'), включите опции 'Use tunneling' и HTTP tunneling'. Нажмите кнопку 'Далее (Next)'. 
4) Укажите URL-путь к загруженному скрипту 'emsproxy.php' как Вы указывали это в браузере (пункт 1).
5) Нажмите кнопку 'Далее'.
6) Укажите имя Вашей БД (выбор БД может быть недоступен, если у Вас ограничены права на сервере) и нажмите кнопку 'Finish'.

HTTP туннелирование - это способ, при котором соединение и передача данных между программой и MySQL сервером происходит через протоколы HTTP/HTTPS, используя порт 80, через который работает обычный веб-браузер. Этот способ подходит для соединения с MySQL, расположенным на удаленным сервере хостинг провайдера, когда прямое соединение невозможно из соображений безопасности. Соединение через HTTP туннель выглядит следующим образом: все исходящие запросы и команды с клиентских программ кодируются и передаются по протоколу HTTP/HTTPS, используя порт 80, специальному скрипту, который декодирует их и передает MySQL серверу на обработку, и возвращает обратно результат. Для использования этого способа на удаленном сервере должен быть установлен HTTP сервер (например, Apache) и PHP с подключенным расширением MySQL. Как правило, это программное обеспечение предлагают все хостинг-провайдеры, предоставляющие услуги хостинга на Linux платформах. Кроме того, вы должны разместить наш emsproxy.php скрипт на вашем веб-сервере так, чтобы иметь к нему доступ извне (например, поместить его в каталог, где находятся ваши остальные PHP скрипты). Если ваш веб-сервер удовлетворяет данным требованиям и скрипт установлен правильно, то при открытии http://<your_webserver_name>/emsproxy.php в веб-браузере вы увидите “EmsProxy v1.31” (версия может меняться). Чтобы зарегистрировать базу данных, соединение к которой должно выполняться с использованием HTTP туннеля, вы должны задать следующие параметры в Мастере Регистрации Баз Данных в SQL Manager for MySQL:

На первом шаге:
Хост - это хост, где расположен MySQL сервер с точки зрения HTTP сервера. Обычно HTTP и MySQL сервер расположены на одной машине и являются 'localhost'.
Порт - это порт MySQL сервера на удаленном узле, по умолчанию он 3306.
Пользователь - это имя пользователя на MySQL сервере.
Пароль - это пароль пользователя на MySQL сервере.
Далее выберите опцию "Использовать туннелирование" и "SSH туннель".

На втором шаге:
URL - это адрес, где находится скрипт emsproxy.php (например, http://mywebserver /emsproxy.php).

Есть несколько причин по которым вы не можете соединиться с удаленной базой данных. Если появляется ошибка "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", то причиной этого является отсутствие прав у пользователя для доступа к базе данных.

Утилиты Data Export/Import for MySQL включают в себя несколько дополнительных возможностей, не поддерживаемых SQL Manager for MySQL, например: 

  • экспорт/импорт данных из/в нескольких таблиц сразу;
  • экспорт/импорт данных из/в таблиц, выбранных из различных баз данных на одном хосте;
  • консольная утилита для экспорта/импорта с использованием файла конфигурации, содержащего все настройки.

    Чаще всего данные отображаются таким образом в случае, если реальная кодировка данных не соответствует кодировке полей БД. Например, греческие символы хранятся в поле, для которого задана кодировка latin1. Если это так, то задайте значение ‘Windows charset’ в поле ‘Client charset’ диалога ‘Database Registration Info’. Если в этом случае данные отображаются корректно, то этот режим можно использовать в качестве временного решения, но необходимо помнить, что это неверная настройка БД – некорректно будут работать серверные сравнения и сортировки данных. Мы рекомендуем Вам обратиться в нашу техническую поддержку в этом случае.

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

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

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

     

    Наиболее вероятные причины этой ошибки: порт 3306, который используется MySQL, закрыт файерволом, установленным в вашей сети или у хостинг-провайдера, либо протокол TCP отключен на удаленном MySQL сервере, либо ваш пользователь и хост, с которыми вы пытаетесь произвести соединение, не имеет необходимых для этого полномочий.

    Во-первых, EMS SQL Query for MySQL работает гораздо быстрее, т.к это отдельное приложение. Кроме того, SQL Query for MySQL предлагает дополнительные функции для построения запросов, например: 

    • функция хранения истории запросов, позволяющая произвести "откат" к любому отредактированному запросу;
    • различные улучшения интерфейса для более простой и эффективной работы.

    SQL Manager хранит все свои настройки в реестре Windows. Это означает, что единственный способ перенести их – получить доступ к реестру Windows. Сделать это можно, загрузив ОС со старого HDD (если это возможно) либо открыв файл реестра специальной программой-редактором. Если это удалось, то можно выгрузить ветку ‘HKEY_CURRENT_USER\Software\EMS\MySQL Manager’ в *.REG файл, перенести этот файл на новую систему и добавить информацию в реестр с помощью двойного щелчка мыши по файлу.

    Вероятно, у вас включена опция "Автоподбор ширины столбца" на закладке "Сетка" диалога "Настройки/Настройки окружения". Попробуйте отключить ее.

    Данная ошибка вызвана отсутствием прав у вашего хоста на соединение с удаленным 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/privileges-provided.html)

    DB Extract for MySQL включает в себя некоторые дополнительные функции, которые недоступны в SQL Manager for MySQL, например:

    • извлечение метаданных из различных баз данных, расположенных на одном сервере;
    • консольное приложение для упрощения процесса извлечения;
    • большая скорость работы.

     

    Пожалуйста, выберите опцию "Выбрать все записи из таблицы" на закладке "Опции данных" диалога "База данных/Регистрационная информация базы данных". Для того чтобы установить этот режим по умолчанию для всех новых баз данных, вы можете выбрать опцию "Выбрать все записи из таблицы" на закладке “Опции данных” в меню “Настройки/Настройки окружения”..

     

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

    Закладки DDL в Редакторе Таблиц и Редактор UDF имеют параметры "только чтение/read only". Они отображают SQL-текст операций, которые Вы переносите из таблиц в закладки "Поля", "Индексы" или через UDF. Чтобы модифицировать этот текст, необходимо скопировать его в буфер обмена, а затем изменять его, используя Редактор Сценариев SQL.

     

    Диалог "Регистрационная информация базы данных" содержит закладку "Журналы регистрации", в которой Вы можете разрешить протоколирование всех изменений метаданных в базе данных, а также протоколирование выражений SQL, выполняемых в Редакторе SQL. Вы должны включить опцию "Включить регистрацию изменений метаданных" для вашей тестовой базы данных, произвести необходимые модификации в базе, затем выполнить получившийся логфайл метаданных на вашей основной базе данных.

    Скорее всего, Вы используете старую версию библиотеки libmySQL.dll. Используйте клиентскую библиотеку из нашего установочного пакета. Попробуйте переустановить приложение.