16.1. Подключение к MySQL с помощью JDBC
Проблема
Вы хотите подключиться к базе данных MySQL (или любой другой базе данных). с драйвером JDBC) из приложения Scala с использованием «старого доброго JDBC».
Решение
Используйте JDBC так же, как в приложении Java. Загрузите Драйвер MySQL JDBC, а затем получить доступ к вашей базе данных с помощью кода, например это:
пакеттесты
импорт
java.sql.
{
Соединение
,
DriverManager
}
объект
ScalaJdbcConnectSelect
расширяет
Приложение
{
// подключиться к базе данных с именем «mysql» на порту 8889 локального хоста
val
URL-адрес
=
"jdbc:mysql://localhost:8889/mysql"
val
драйвер
=
"com.
mysql.jdbc.Driver" значение
имя пользователя
=
"корень"
значение
пароль
=
"корень"
var
соединение
:
соединение
=
_
попробовать
{
Класс
.
forName
(
драйвер
)
соединение
=
DriverManager
.
гетконнектион
(
URL-адрес
,
имя пользователя
,
пароль
)
val
оператор
=
соединение
.
createStatement
val
rs
=
выписка
.
executeQuery
(
«ВЫБЕРИТЕ хост, пользователя ОТ пользователя»
)
а
(
рупий
.
следующий
)
{
val
хост
=
rs
.
getString
(
"хост"
)
val
пользователь
=
rs
.
getString
(
"пользователь"
)
println
(
"хост = %s, пользователь = %s"
.
формат
(
хост
,
пользователь
))
}
}
поймать
{
случай
e
:
Исключение
=>
e
.
printStackTrace
}
соединение
.
закрыть
}
Этот код показывает, как запросить таблицу базы данных с именем пользователя
в базе данных с именем MySQL
. Это имя базы данных и имя таблицы
стандарт в любой установке MySQL.
Как показано в примере, формат строки URL-адреса MySQL JDBC is:
jdbc:mysql://HOST:PORT/DATABASE
В этом коде MySQL работает на порту
на моем компьютере, потому что он используется по умолчанию
port при использовании MAMP, инструмента, упрощающего запуск MySQL, Apache и PHP в системах Mac OS X. Если у вас есть MySQL…
Получить Scala Cookbook теперь с обучающей платформой O’Reilly.
90 005 участников O’Reilly знакомятся с книгами, живыми мероприятиями, курсами, подобранными по должностям, и многим другим от O’Reilly и почти 200 ведущих издателей.Начать бесплатную пробную версию
Подключить Bamboo к базе данных MySQL | Bamboo Data Center and Server 9.3
Подключение Bamboo к внешней базе данных
- Подключение Bamboo к базе данных PostgreSQL
- Подключить Bamboo к базе данных MySQL
- Подключить Bamboo к базе данных Oracle
- Подключить Bamboo к базе данных Microsoft SQL Server
- Просмотр сведений о подключении к базе данных
- Переместить данные в другую базу данных
На этой странице
В этом разделе
- Tomcat и пример внешнего источника данных MySQL
Связанный контент
- Связанный контент не найден
Все еще нужна помощь?
Сообщество Atlassian ждет вас.
Задайте вопрос сообществу
На этой странице описывается, как подключить Bamboo к базе данных MySQL.
На этой странице:
Связанные страницы:
Устранение неполадок с базами данных
Драйвер JDBC для MySQL 5.1 (JDBC Connector/J 5.1) больше не в комплекте с Bamboo. Вы должны скачать и установить драйвер самостоятельно.
Прочую информацию о версиях MySQL, поддерживаемых Bamboo, см. в разделе Поддерживаемые платформы.
1. Создание и настройка базы данных MySQL
Чтобы внешняя база данных MySQL хорошо работала с Bamboo, она должна иметь возможность использовать следующее:
-
utf8
илиutf8mb4
латиница1
-
utf8_bin
илиutf8mb4_bin
сопоставление - механизм хранения InnoDB
- (рекомендуется, не требуется) lower_case_table_names=1
Настройка lower_case_table_names=1 может нарушить работу других приложений Atlassian. Для получения дополнительной информации см. шаги.
- глобальный уровень изоляции транзакций как READ_COMMITTED
- Отключить режим NO_AUTO_VALUE_ON_ZERO.
Мы также рекомендуем настроить сервер базы данных MySQL для использования механизма хранения InnoDB. В качестве альтернативы вы можете настроить соединение Bamboo JDBC с вашей базой данных MySQL, чтобы любые таблицы, которые Bamboo создает в этой базе данных, выполнялись с использованием ядра базы данных InnoDB.
Администратор базы данных MySQL может легко создать и настроить базу данных MySQL для Bamboo, выполнив следующие команды MySQL:
Создайте базу данных с кодировкой utf8…mysql> СОЗДАТЬ БАЗУ ДАННЫХ бамбуковый НАБОР СИМВОЛОВ utf8 COLLATE utf8_bin; mysql> ПРЕДОСТАВИТЬ ВСЕ ПРИВИЛЕГИИ НА bamboo. mysql> УДАЛИТЬ ПРИВИЛЕГИИ; mysql>Создайте базу данных, используя кодировку символов utf8mb4…ВЫЙТИ
mysql> СОЗДАТЬ БАЗУ ДАННЫХ bamboo НАБОР СИМВОЛОВ utf8mb4 COLLATE utf8mb4_bin; mysql> ПРЕДОСТАВИТЬ ВСЕ ПРИВИЛЕГИИ НА bamboo. mysql> УДАЛИТЬ ПРИВИЛЕГИИ; mysql> QUIT
bamboouser
— имя учетной записи пользователя для базы данных Bamboo MySQL. Это создает пустую базу данных MySQL для Bamboo с именем bamboo
, где:
-
localhost
— имя хоста сервера базы данных MySQL -
пароль
— пароль для этой учетной записи пользователя
Дополнительные сведения о настройке кодировки набора символов и сопоставления для баз данных Bamboo MySQL см. в документации по MySQL 5 — Определение наборов символов и сопоставлений.
Чтобы убедиться, что режим NO_AUTO_VALUE_ON_ZERO отключен, запустите этот запрос на своем сервере MySQL:
SELECT @@SQL_MODE, @@GLOBAL.SQL_MODE;
Первый режим — режим для сессии, второй — глобальные настройки для MySQL. Если глобальный режим содержит NO_AUTO_VALUE_ON_ZERO, его необходимо удалить, как описано в документации MySQL.
2. Подключение бамбука с базой данных MySQL
Вы можете подключить бамбук к MySQL одним из следующих способов:
- , используя JDBC
- , используя DataSource
JDBC, как правило, мы рекомендуем это Simpler.
Подключение с помощью JDBC
1. Загрузите и установите драйвер JDBC
Драйверы JDBC для MySQL Enterprise Server больше не входят в комплект вместе с Bamboo (из-за лицензионных ограничений). Вам нужно скачать и установить драйвер самостоятельно.
- Загрузите драйвер MySQL Connector/J JDBC 5.1 с сайта загрузки.
- Извлеките загруженный файл zip/tar.gz.
- Скопируйте файл mysql-connector-java-5.1.XX-bin.jar из извлеченного каталога в
<каталог установки Bamboo>/lib Каталог
(создайте каталогlib/
, если он еще не существует).
Если вы используете Java Service Wrapper для запуска экземпляра Bamboo (Bamboo/wrapper/run-bamboo start
), скопируйте файл mysql-connector-java-5.1.XX-bin.jar в.
<Каталог установки Bamboo>
- Остановите Bamboo на Windows, Linux или Mac.
- Перезапустите Bamboo на Windows, Linux или Mac.
2. Подключите Bamboo к базе данных MySQL с помощью JDBC
- Запустите мастер установки и выберите метод выборочной установки .
- На странице «Выбор конфигурации базы данных» выберите Внешняя база данных > MySQL 5.1 и нажмите Продолжить .
Убедитесь, что выбрано Прямое соединение JDBC , и заполните следующие поля (как показано на снимке экрана ниже):
Имя класса драйвера
Тип).
URL-адрес базы данных
Введите URL-адрес, по которому Bamboo будет обращаться к вашей базе данных (если он отличается от значения по умолчанию). Ваш URL должен включать флагautoReconnect=true
.- Если вы собираетесь использовать нелатинские символы в Bamboo, убедитесь, что ваш URL-адрес включает флаги
useUnicode=true
иcharacterEncoding=utf8
. Если ваш сервер базы данных MySQL по умолчанию настроен на использование механизма хранения, отличного от InnoDB, убедитесь, что ваш URL-адрес включает флаг
sessionVariables=storage_engine=InnoDB
.
Если вы включите все эти флаги, ваши URL-адрес базы данных должен выглядеть примерно так:jdbc:mysql://localhost/bamboo?autoReconnect=true&useUnicode=true&characterEncoding=utf8&sessionVariables=storage_engine=InnoDB
Если флагautoReconnect=true
не указан, время ожидания драйвера JDBC MySQL в конечном итоге истечет, и Bamboo больше не сможет взаимодействовать с базой данных.
Дополнительные сведения о синтаксисе URL см. в документации MySQL.Если вы используете MySQL Connector 8.0 с базой данных MySQL 5.7, таблицы AO не будут созданы и Bamboo не сможет запуститься. Чтобы предотвратить это, включите флаг n
ullCatalogMeansCurrent=true
в URL своей базы данных.
URL-адрес вашей базы данных должен выглядеть примерно так:jdbc:mysql://instenv-2787-y7fe.c7uydxwwuprf.eu-west-1.rds.amazonaws.com:3306/bamboo?autoReconnect=true&useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true
Имя пользователя
Введите имя пользователя, которое Bamboo будет использовать для доступа к базе данных. Этоbamboouser
, определенный в разделе 1 (выше).Пароль
Введите пароль (если требуется), который Bamboo будет использовать для доступа к базе данных. Это пароль- Если вы собираетесь использовать нелатинские символы в Bamboo, убедитесь, что ваш URL-адрес включает флаги
- Выбрать Перезаписать существующие данные , если вы хотите, чтобы Bamboo перезаписывал любые таблицы, которые уже существуют в базе данных.
Выберите Продолжить .
Подключение с использованием источника данных
Настройте источник данных на сервере приложений (подробности см. в документации по серверу приложений). Обратите внимание на следующее:
Убедитесь, что URL-адрес JDBC, который вы настраиваете на своем сервере приложений, включает
autoReconnect=true
,useUnicode=true
иcharacterEncoding=utf8
флаги, чтобы URL-адрес вашей базы данных выглядел примерно так:jdbc:mysql://localhost/bamboo?autoReconnect=true&useUnicode=true&characterEncoding=utf8
Если ваш Сервер базы данных MySQL по умолчанию настроен на использование механизма хранения, отличного от InnoDB, также включите в этот URL-адрес флаг
sessionVariables=storage_engine=InnoDB
.Если флаг autoReconnect не установлен, время ожидания драйвера JDBC MySQL в конечном итоге истечет, и Bamboo больше не сможет взаимодействовать с базой данных.
Дополнительную информацию о синтаксисе URL см. в документации MySQL.Пример источника данных: Вы можете увидеть пример использования Tomcat с базой данных MySQL в качестве источника данных в следующем документе: Пример Tomcat и внешнего источника данных MySQL.
Запустите мастер установки и выберите метод выборочной установки .
Выберите Внешняя база данных > MySQL 5.1 из списка и нажмите Продолжить .
Выберите Подключиться через источник данных (настроенный на сервере приложений) (как показано на скриншоте ниже).
В поле Имя JNDI введите имя JNDI вашего источника данных, как настроено на вашем сервере приложений.
Еслиjava:comp/env/jdbc/DataSourceName
не работает, попробуйтеjdbc/DataSourceName
(и наоборот).Выбрать Перезаписать существующие данные , если вы хотите, чтобы Bamboo перезаписывал любые таблицы, которые уже существуют в базе данных.