web-dev-qa-db-fra.com

Openshift: Comment accéder à distance à MySQL?

Je venais donc de terminer la configuration d’un équipement de serveur d’applications JBoss sur Openshift et j’attachais un MySQL et phpmyadmin cartouches. Ma question est la suivante: existe-t-il un moyen d'accéder à distance au serveur de base de données à l'aide d'une application telle que MySQL Workbench

26
Stephn_R

Vous pouvez utiliser rhc port-forward pour transférer les ports de votre base de données vers votre ordinateur local. Découvrez le tutoriel ici . L'idée de base de la redirection de port dans ce contexte est que vous pouvez transférer les ports de votre ordinateur local vers ceux de votre équipement. Donc, dans votre cas, vous transmettriez un port de votre machine locale au port que mysql écoute pour les connexions de votre matériel. Ensuite, vous connecteriez MySQL Workbench au port de votre ordinateur local.

24
Paul Morie

Utiliser SSH et MysqlWorkbench

Commandes SSH: (à côté de rhc ssh myappname)

echo $OPENSHIFT_MYSQL_DB_Host

echo $OPENSHIFT_MYSQL_DB_PORT

echo $OPENSHIFT_MYSQL_DB_USERNAME

echo $OPENSHIFT_MYSQL_DB_PASSWORD

MysqlWOrkbench

Créer une nouvelle connexion:

Définir le nom de la connexion

définir la méthode de connexion: TCP/IP standard sur SSH

Fill SSH hostname = Hôte de votre application, ex: "myappname-user.rhcloud.com"

Nom d'utilisateur SSH = UUID de votre application

Fichier de clé SSH = Sous Windows: C:\Utilisateurs\XXX.ssh\id_rsa Sous OS X: /Users/XXX/.ssh/

Cliquez sur "Tester la connexion" .... et utilisez myqlworkbench

24
Bhasckar Belo

La solution est expliquée ici en utilisant Linux:

rhc port-forward -a app &

rhc app show -a <app>

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

Après avoir entré votre mot de passe, vous êtes connecté avec mysql à distance sur Openshift.

5
Timo

Connexion via SSH.

  1. Connexion pour SSH
  2. exportation | grep MYSQL
  3. Afficher la valeur sur OPENSHIFT_MYSQL_DB_Host et OPENSHIFT_MYSQL_DB_PORT

Exemple:

[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

Pour accéder à distance à MySQL sur Openshift, vous pouvez configurer NodePort ou LoadBalancer en tant que type sur le service au lieu de ClusterIP par défaut. Cela permettra un accès TCP externe à votre base de données. Remarque Un noeudport sera défini par défaut dans la plage 30000-32767 et sera mappé sur le cible.

0
user518066