it-swarm.com.ru

Openshift: как получить удаленный доступ к MySQL?

Поэтому я только что завершил настройку сервера приложений JBoss в Openshift и подключил картриджи MySQL и phpmyadmin . У меня вопрос, есть ли способ удаленного доступа к серверу базы данных с помощью приложения, такого как MySQL Workbench

26
Stephn_R

Вы можете использовать rhc port-forward для переадресации портов из вашей базы данных на ваш локальный компьютер. Проверьте учебник здесь . Основная идея переадресации портов в этом контексте заключается в том, что вы можете перенаправлять порты на вашем локальном компьютере на порты на устройстве. Так что в вашем случае вы бы перенаправили какой-нибудь порт на вашем локальном компьютере на порт, который прослушивает mysql на предмет соединений в вашем устройстве. Затем вы должны подключить MySQL Workbench к порту на вашей локальной машине.

24
Paul Morie

Используйте SSH и MysqlWorkbench

SSH команды: (рядом с rhc ssh myappname)

echo $OPENSHIFT_MYSQL_DB_Host

echo $OPENSHIFT_MYSQL_DB_PORT

echo $OPENSHIFT_MYSQL_DB_USERNAME

echo $OPENSHIFT_MYSQL_DB_PASSWORD

MysqlWOrkbench

Создать новое соединение:

Установить имя соединения

установить метод подключения: Стандартный TCP/IP через SSH

Заполните SSH hostname = Host of yor app, например: "myappname-user.rhcloud.com"

Имя пользователя SSH = UUID вашего приложения

Файл ключа SSH = В Windows: C:\Users\XXX.ssh\id_rsa В OS X: /Users/XXX/.ssh/

Нажмите «Проверить соединение» .... и используйте myqlworkbench

24
Bhasckar Belo

Решение объясняется здесь с использованием Linux:

rhc port-forward -a app &

rhc app show -a <app>

mysql -u <user>  -h 127.0.0.1 -P 3307 -p

После ввода пароля вы подключаетесь к удаленному mysql в Openshift.

5
Timo

Войти через SSH.

  1. Вход для SSH
  2. экспорт | grep MYSQL
  3. Просмотр значения в OPENSHIFT_MYSQL_DB_Host и OPENSHIFT_MYSQL_DB_PORT

Пример:

[xxxxxxx.rhcloud.com xxxxxxx]\>  export | grep MYSQL
declare -x OPENSHIFT_MYSQL_DB_GEAR_DNS="xxxxxxx-name.rhcloud.com"
declare -x OPENSHIFT_MYSQL_DB_GEAR_UUID="xxxxxxx"
declare -x OPENSHIFT_MYSQL_DB_Host="xxxxxxx-name.rhcloud.com"
declare -x OPENSHIFT_MYSQL_DB_PASSWORD="nlxxxxxxx"
declare -x OPENSHIFT_MYSQL_DB_PORT="57176"
declare -x OPENSHIFT_MYSQL_DB_URL="mysql://adminxxxxxxx:nlqxxxxxxx-name.rhcloud.com:57176/"
declare -x OPENSHIFT_MYSQL_DB_USERNAME="adminxxxxxxx"
3
Sergio

Для удаленного доступа к MySQL в Openshift вы можете настроить NodePort или LoadBalancer в качестве типа в Сервисе вместо ClusterIP по умолчанию. Это позволит внешний доступ к вашей базе данных по протоколу tcp. Обратите внимание, что порт узла будет определен в диапазоне 30000-32767 по умолчанию, который будет сопоставлен с портом назначения.

0
user518066