Оформление
Общие вопросы по подключению данных - FineReport Справка | Разработка отчетов | Использование отчетов | Учебные пособия
Общие вопросы о соединениях данных
1. Обзор
1.1 Версия
| Версия сервера FineBI |
|---|
| 6.0 |
1.2 Сценарии применения
В этой статье мы перечислим распространенные проблемы и шаги по устранению неполадок в процессе подключения данных.
2. Идеи для идентификации
Подключение к базе данных невозможно, информация о подключении неверна, это также может быть проблемой среды подключения к базе данных. В этой статье приведены следующие идеи и методы устранения неполадок:
- Проверьте правильность URL-адреса.
- Проверьте белый список облачной базы данных.
- Запустите виджет тестирования, чтобы проверить наличие проблем в среде подключения, помимо BI, включая базу данных и драйвер базы данных.
- Проверьте журналы фоновых ошибок, чтобы узнать, нет ли конфликта пакетов JAR между драйвером базы данных и BI.
2.1 Проверка корректности URL-адреса
Обратитесь к разделу Data Connection Support Scope, чтобы найти правильный формат URL соответствующей базы данных и проверить, правильно ли заполнен URL подключения к данным. Как показано на следующем рисунке:

2.2 Проверка брандмауэра
Убедитесь, что в базе данных включен белый список для сервера BI.
2.3 Инструмент самодиагностики подключения данных
Примечание 1: Инструмент самопроверки подключения данных предоставляется только для самостоятельного анализа пользователем. Техническая поддержка не несет ответственности за обслуживание инструмента и использование ответа на вопрос.
Примечание 2: Для запуска инструмента требуется среда JDK.
Инструмент определяет наличие проблем в среде подключения (база данных и драйвер) и предоставляет следующие возможности:
- Проверьте функциональность базы данных (простой режим), включая: SQL-запросы, информацию о таблицах и количество создаваемых соединений с данными.
- Проверьте функциональность базы данных (расширенный режим, поддержка внешних драйверов, аутентификация Kerberos и т. д.).
- Проверьте расположение зависимых пакетов/классов проекта.
- Проверьте сеть базы данных, включая: проверку удаленного сетевого соединения и проверку настройки локального имени хоста.
2.3.1 Инструменты для установки
Нажмите для загрузки и распакуйте, чтобы получить вложение: fine-tester.zip
Скопируйте прилагаемый файл fine-tester.jar в любую директорию (английская директория, без пробелов и других специальных символов в пути). Как показано на рисунке ниже:

2.3.2 Инструменты для запуска
Запустите cmd, перейдите в каталог, где находится fine-tester.jar, выполните java -jar fine-tester.jar и выберите функцию, которую нужно обнаружить. Как показано на следующем рисунке:
Примечание: Поддерживается ввод параметров команды url/user/password, например: java -jar fine-tester.jar url=jdbc:mysql://localhost:3306/test user=root password=xxx

2.3.3 Проверка нормальности получения данных из соединения
1) Введите цифру 1 и, выбрав функцию тестирования базы данных (простой режим), введите код драйвера базы данных, URL, имя пользователя, пароль базы данных и т.д. в соответствии с подсказками. Как показано на рисунке ниже:
Примечание: Если в каталоге, где находится инструмент самотестирования fine-tester.jar, нет драйвера базы данных, необходимо вручную указать путь к файлу драйвера базы данных.

2) Выберите функцию "SQL-запрос и расход времени на выборку" и введите SQL-запрос.
Если после ввода SQL-запроса появляется сообщение "SQL Query Time Consuming ", это означает, что гаджет подключен успешно. Если в середине процесса появляется сообщение об ошибке, это означает, что в среде подключения к базе данных что-то не так, кроме BI, и вам нужно проверить базу данных и драйвер базы данных.
После успешного подключения вы можете проверить текущее соединение с данными по двум показателям: "Время создания соединения" и "Время выполнения SQL-запроса".Если время создания соединения слишком велико, то это, как правило, проблема сетевого взаимодействия, а если время выполнения SQL-запроса слишком велико, то необходимо оптимизировать SQL, как показано на следующем рисунке:

2.3.4 Проверка расположения пакетов зависимостей проекта
Запустив инструмент, введите цифру 3, чтобы войти в режим "Test java class/package", введите информацию в соответствии с подсказками, а затем проверьте расположение зависимых пакетов проекта . Как показано на рисунке ниже:

2.4 Проверка версии встроенного драйвера JDBC
FineBI включает в себя множество встроенных драйверов, которые соответствуют версии JDK JDK1.8. При использовании FineBI необходимо убедиться, что драйвер соответствует версии JDK.
Если вы используете встроенный драйвер, версия JDK в окружении должна быть 1.8;если вы не хотитеменять версию JDK в окружении, вам нужно перейти по пути проекта%FineBI%/webapps/webroot/WEB-INF/libизаменить версию драйвера на версию JDK в окружении.
Встроенные драйверы и соответствующие им версии JDK приведены в таблице ниже:
| всеобъемлющая база данных | привод (колесо транспортного средства) | JDK |
|---|---|---|
| SQL Server | sqljdbc42.jar | JDK 1.8 с минорной версией JDK8u102 или выше. |
| DB2 | db2jcc4.jar, db2jcc_license_cu.jar | |
| H2 | h2-1.4.192.jar | |
| Informix | ifxjdbc.jar | |
| Sybase | sybase.jar | |
| MySQL | mysql-connector-java-5.1.6-bin.jar | |
| Oracle | ojdbc14.jar |
Если версия JDK в среде 1.7, и вы хотите подключиться к базе данных SQL Server, но версия не совпадает со встроенным драйвером, вам нужно скопировать драйвер SQL Server sqljdbc41.jar в указанный выше каталог, и удалить sqljdbc42.jar.
3. количество соединений данных, достигающих предела лицензии на регистрацию
Описание проблемы:
(1) Когда пользователь добавляет новое соединение для передачи данных, появляется сообщение об ошибке: "Текущее количество соединений для передачи данных достигло предела лицензии на регистрацию (x) и не может быть добавлено". Как показано на рисунке ниже:

2) Когда администратор входит на страницу управления соединениями данных, появляется сообщение об ошибке "Текущее количество соединений данных превысило лимит лицензии на регистрацию (x), все соединения данных недоступны, пожалуйста, удалите лишние соединения данных". Как показано на рисунке ниже:

3) При миграции ресурсов возникает ошибка "Текущее количество соединений данных достигло предела лицензии на регистрацию (x) и не может быть импортировано".
Анализ причин:
При регистрации проекта количество соединений для передачи данных ограничено. Если лимит достигнут, сообщается об ошибке или исключении.
Супер-администратор входит в систему Data Decision System и посещает http://IP:端口/webroot/decision/v10/register/info/license на текущей странице, чтобы просмотреть предельные значения на момент регистрации.
Если количество соединений данных достигнет предельного значения, соединения данных не будут добавляться, а вновь добавленные соединения данных не будут отображаться.
Решение 1: Вы можете добавить новые соединения данных, удалив избыточные соединения данных в системе и предотвратив превышение количества соединений данных над лимитом зарегистрированных лицензий.
Решение 2: Если пользователю действительно требуется больше соединений для передачи данных, чем установлено лимитом, он может перерегистрироваться и увеличить лимит количества соединений для передачи данных. Подробности см. в разделе:Аутентификация информации о локальной машине
4. Необычное исчезновение соединений для передачи данных
Описание проблемы:
1) Ненормальное исчезновение соединения с данными: например, исчезновение после перезагрузки, исчезновение после регистрации, внезапное исчезновение и т.д.
2) После создания/обновления соединения с данными сохранение происходит ненормально, сохранение не поднимается и т. д.
4.1 Проверьте соблюдение регистрационных ограничений
Анализ причин:
При регистрации проекта количество соединений данных ограничивается. Если предельное значение достигнуто, это может привести к тому, что соединения данных, превышающие предел, исчезнут из системы.
Ступени истощения:
Супер-администратор входит в систему Data Decision System и посещает http://IP:端口/webroot/decision/v10/register/info/license на текущей странице, чтобы просмотреть предельные значения на момент регистрации.
Если количество соединений данных достигнет предельного значения, соединения данных не будут добавляться, а вновь добавленные соединения данных не будут отображаться.
Решение:
1) Вы можете добавить новое соединение данных, удалив существующее бесполезное соединение данных в системе.
2) Обратитесь в компанию SailSoft, чтобы узнать количество приобретенных дополнительных соединений для передачи данных.
4.2 Проверка совместного использования внешних баз данных
Анализ причин:
Когда несколько проектов используют одну и ту же внешнюю базу данных, это может привести к тому, что конфигурация проекта A будет перезаписана проектом B, что может привести к нештатному исчезновению соединения с данными.
Ступени истощения:
Проверьте, нет ли других проектов, использующих ту же внешнюю базу данных.
Решение:
Если вы делаете общий доступ, сначала создайте резервную копию текущей внешней базы данных.
Перенесите внешнюю базу данных одного из проектов, подробности см. в разделе: Настройка внешней базы данных
5. не загружается в драйвер
Описание проблемы:
При нажатии кнопки "Проверить соединение" при создании нового соединения для передачи данных появляется сообщение об ошибке, что драйвер не загружен.
Анализ причин:
Диск, используемый для подключения данных, не существует в проекте.
Решение:
Для внешних пользователей вы можете напрямую перейти к соответствующему файлу справки по загрузке драйвера через гиперссылку в интерфейсе подсказки.
Для пользователей интрасети, пожалуйста, выберите соответствующий документ в соответствии с вашей базой данных и типом драйвера, скачайте и установите драйвер самостоятельно: Data Connection
После установки драйвера просто повторите подключение.
6. NoClassFoundException
Описание проблемы:
В журнале проекта появилось сообщение об ошибке "NoClassFoundException".
Исчерпывающие размышления:
Драйвер, используемый для этого соединения данных, отсутствует в проекте, или существует проблема с драйвером
7. Ошибка NoClassDefFoundError
Описание проблемы:
В журнале проекта появилось сообщение об ошибке "NoClassDefFoundError".
Исчерпывающие размышления:
В проекте могут быть конфликтующие пакеты драйверов.