Sambungkan jarak jauh ke database heroku clearDB


103

Bagaimana saya bisa melakukan koneksi jarak jauh ke database MySQL ClearDB di heroku menggunakan misalnya MySQL Query Browser. Dimana mendapatkan url, port, login dan password?

Jawaban:


185

Di situs web heroku, buka Aplikasi Saya dan pilih aplikasi tempat Anda menginstal ClearDB.

Di sudut atas klik Addons lalu pilih ClearDB MySQL Database . Sesampai di sana, klik database Anda dan pilih tab ' Informasi Titik Akhir '. Di sana Anda melihat nama pengguna / kata sandi Anda. URL ke database dapat diperoleh dengan menjalankan heroku config --app <YOUR-APP-NAME>baris perintah.

Dalam kasus saya, itu seperti: mysql: // user: pass @ us-cdbr-east.cleardb.com / DATABASE? Reconnect = true Yang Anda butuhkan adalah bagian ini: us-cdbr-east.cleardb.com


17
Anda juga dapat melihat ini langsung di dasbor / situs web Heroku, cukup buka aplikasi Anda, klik "Pengaturan" dan "Tampilkan variabel konfigurasi".
Eirik H

1
Setidaknya dalam kasus saya, bagian yang setara dengan us-cdbr-east.cleardb.com bukanlah nama database melainkan nama host. Namun nama database ditemukan di dasbor untuk addon ClearDB.
Roseaboveit

3
Anda harus mengekspor file database lokal Anda ke database yang dibuat oleh Heroku. Ikuti saja video ini dan Anda akan baik-baik saja ke youtube.com/watch?v=mBCH9OTVaGw&t=6s
Kartik Chauhan

86

Anda menjalankan konfigurasi heroku untuk mendapatkan CLEARDB_DATABASE_URLdan itu harus berupa sesuatu dari format ini:

CLEARDB_DATABASE_URL => mysql://[username]:[password]@[host]/[database name]?reconnect=true

Jadi pada dasarnya Anda hanya melihat url Anda sendiri dan mendapatkan semua yang Anda inginkan dari sana. Begitulah cara saya mengatur meja kerja mysql.


3
Terima kasih @Andrei tapi bagaimana dengan port untuk databasenya?
BKSpurgeon

2
@Tokopedia Saya membuatnya berfungsi dengan phpMyAdmin dengan port default (Lihat stackoverflow.com/a/22092539/4900327 )
Abhishek Divekar

Terima kasih banyak Pak Ini membantu saya menyebarkan file mysql saya ke heroku dengan sukses
Travis Le

@AbhishekDivekar komentar Anda sangat membantu saya. Saya baru saja mengubah nama pengguna dan beberapa hal di file congig.inc.php di xamp saya dan itu berfungsi di PHPMyAdmin.
Ahmed Adewale

24

Tempel perintah ini di terminal

  heroku config | grep CLEARDB_DATABASE_URL

Setelah ini Anda akan mendapatkan URL Database. misalnya ini adalah URL database cleardb Anda.

'mysql://b0600ea495asds:9cd2b111@us-cdbr-hirone-west-
 06.cleardb.net/heroku_4a1dc3673c4114d?reconnect=true'

Kemudian ini akan menjadi kredensial database Anda. (Diambil dari URL Di Atas)

NAMA PENGGUNA = b0600ea495asds

KATA SANDI = 9cd2b111

PEMBAWA ACARA = us-cdbr-hirone-west- 06.cleardb.net

NAMA DATABASE = heroku_4a1dc3673c4114d


13

Saya membuat video yang menjelaskan cara menyambung ke MySql menggunakan NodeJS di server Heroku, lihat:

http://www.youtube.com/watch?v=2OGHdii_42s

Ini adalah kode jika Anda ingin melihat:

https://github.com/mescalito/MySql-NodeJS-Heroku

Ini bagian dari kodenya:

var express = require("express");
var mysql      = require('mysql');
var app = express();
app.use(express.logger());

var connection = mysql.createConnection({
  host     : 'us-cdbr-east-04.cleardb.com',
  user     : 'b6d6c6e874',
  password : 'b3f7###',
  database : 'heroku_1daa39da0'
});

connection.connect();

app.get('/', function(request, response) {
  connection.query('SELECT * from t_users', function(err, rows, fields) {
      if (err) {
        console.log('error: ', err);
        throw err;
      }
      response.send(['Hello World!!!! HOLA MUNDO!!!!', rows]);
    });
});

var port = process.env.PORT || 5000;
app.listen(port, function() {
  console.log("Listening on " + port);
});

Bersulang! SIHIR: http://makegif.com/g9yv.gif


4
Tidak tahu mengapa ini sangat tidak disukai .. createConnection Anda menjelaskan semuanya untuk saya. Terima kasih :)
Nico

3
Alasan penurunan suara juga harus diberikan. Inilah jawaban yang membantu saya. Terimakasih Bro!
Anoop.PA

8

Jika Anda menggunakan meja kerja mySQL, ikuti skema ini. Buka Heroku> Pengaturan Aplikasi Anda> Config Vars , dan tunjukkan URL panjangnya. Url itu termasuk nama pengguna, kata sandi, URL database dan skema default Anda. Rekatkan semua informasi sebagai berikut di bawah ini, dan Anda akan berhasil terhubung ke database. Tidak ada penjelasan nyata tentang cara menyambung ke ClearDB menggunakan meja kerja mySQL di utas ini, jadi semoga ini membantu seseorang yang kesulitan.

masukkan deskripsi gambar di sini


Saya mencoba solusi ini tetapi ini tidak berhasil. Tetapi solusi ini berfungsi dengan baik di Sequal Pro.
nitin.agam


1

Anda dapat menggunakan satu baris ini untuk terhubung ke database MySQL Anda di terminal Anda.

$ (ruby -e 'memerlukan "uri"; uri = URI.parse (ARGV [0]); menempatkan "mysql -u # {uri.user} -p # {uri.password} -h # {uri.host} -D # {uri.path.gsub ("/", "")} "'konfigurasi heroku: dapatkan CLEARDB_DATABASE_URL`)

1

Buka aplikasi Anda di heroku dan klik tab 'pengaturan'. Kemudian klik tombol pada opsi kedua yang bertuliskan 'mengungkapkan config vars'.

Anda harus menemukan, tercantum di bawah variabel CLEARDB_DATABASE_URL, sesuatu seperti ini ...

mysql: // [nama pengguna]: [sandi] @ [host] / [nama database]? menghubungkan kembali = true

Jadi [bagian tuan rumah] adalah tuan rumah Anda. Bagian [nama database] adalah nama db Anda, tentu saja.

Anda masih membutuhkan nama pengguna dan kata sandi Anda. Kembali ke tab 'ikhtisar' di heroku. Buka add-on ClearDB di bagian add-on yang Anda instal. Klik database yang ingin Anda akses (mungkin hanya ada 1 pilihan). Klik tab 'informasi sistem'. Anda harus melihat nama pengguna dan kata sandi Anda.

hanya itu yang Anda butuhkan untuk mengakses database Anda. Saya menggunakan sekuel pro. Saya baru saja memasukkan info itu (nama, host, ke tab 'standar' dan saya siap melakukannya.


0

Semua detail akan ada di URL database yang dapat ditemukan di heroku config. Dengan asumsi Anda dapat terhubung ke ClearDB secara langsung (saya belum pernah mencoba), ini harus menjadi semua yang Anda butuhkan ...


0

Semua ini bekerja dengan sempurna untuk saya. Menggunakan konfigurasi heroku | grep, seperti dijelaskan di atas dan kemudian cukup menambahkan entri lain ke config.inc.php saya untuk digunakan oleh phpMyAdmin dan saya dapat mengakses database cleardb saya dari jarak jauh. Ini membuat saya tidak perlu memiliki SQL secara lokal dan menggunakan postgres dengan Heroku.



-1

Ya, Anda dapat terhubung ke ClearDB secara langsung, sebenarnya saya menggunakan Workbench untuk terhubung. Kemudian Anda dapat menggunakan DB yang sama untuk localhost Anda dan untuk heroku.


4
Itu bagus untuk diketahui, tapi bagaimana hal itu membantu OP menemukan informasi koneksi mereka?
Brad Koch

1
Anda benar, tetapi saya baru saja menambahkan info, karena Neil Middleton berkata "Dengan asumsi Anda dapat terhubung ke ClearDB secara langsung", maka saya hanya mengatakan Ya, dia bisa. Saya minta maaf karena menjawab sesuatu yang tidak membantu pertanyaan utama.
Alisson Reinaldo Silva

Jangan khawatir. Hal-hal seperti ini benar-benar bahan komentar yang bagus, tetapi sepertinya Anda masih membutuhkan beberapa perwakilan lagi untuk itu.
Brad Koch

saya punya 0 masalah gettig ke layanan heroku. tetapi dari layanan ke db adalah tempat masalahnya. boooo. gettig "panggil tcp 127.0.0.1:3306: getsockopt: koneksi ditolak"
filthy_wizard
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.