Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Database remoto

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2017
    Messaggi
    23

    Database remoto

    Ciao a tutti gli amici del forum,
    inizio a scrivermi oggi per chiedere gentilmente un aiuto in merito a quanto segue:

    Per lavoro mi collego, tramite VPN, ad un desktop remoto (funzione di windows) ovvero un vero e proprio pc virtuale che ha accesso al DB Oracle. Quindi usando il TOAD (presente su tale pc) riesco a collegarmi ad un determinato DB usando (ovviamente) USERNAME e PASSWORD.

    Vorrei creare un programmino con visual basic ed usare il DB sul PC locale (quello che uso per accedere al DB remoto).

    come posso fare per collegarmi al PC remoto con Visual studio 2015 e linguaggio Visual basic?

    Leggendo su internet son riuscito a creare una form (con una combobox ed un button per il collegamento - dove inserisco IP del PC remoto), ed un modulo in cui riporto i dati di accesso al DB:

    -- (A) -- CODICE FORM:


    Imports MySql.Data.MySqlClient


    Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click


    Try
    openConnection() ' apri connessione
    Dim cmd As String = "SELECT * from MY TABLE"
    Dim da As MySqlDataAdapter = New MySqlDataAdapter(cmd, conn)
    Dim dt As New DataTable
    da.Fill(dt)


    ComboBox1.Enabled = True
    ComboBox1.Items.Clear()
    ComboBox1.Items.Add(" == Select Database == ")


    Dim i As Integer = 0
    While i < dt.Rows.Count
    'aggiungi ricghe alla combox
    ComboBox1.Items.Add(dt.Rows(i)(0).ToString())
    i = i + 1
    End While
    ComboBox1.SelectedIndex = 0
    conn.Clone()
    dt.Dispose()
    da.Dispose()
    Catch ex As Exception
    MsgBox("Faild to connect whith database server")
    End Try
    End Sub
    End Class


    -- (B) -- CODICE MODULE:

    Imports MySql.Data.MySqlClient




    Module ModuleConnection




    Public conn As MySqlConnection
    Sub openConnection()


    Dim server As String = "10.xxx.xxx.60" 'IP DB REMOTO
    Dim hostname As String = "DBPROVA" 'NOME DB REMOTO
    Dim userID As String = "myuser" 'server userID
    Dim password As String = "mypassword" 'server password


    Try
    Dim query As String = "server=" & server & "; HOSTNAME=" & hostname & "; user id=" & userID & " ; password=" & password & "; Convert Zero Datatime=True"
    conn = New MySqlConnection(query)
    If conn.State = ConnectionState.Closed Then
    conn.Open() 'apri connessione
    MsgBox("Connection success")
    End If


    Catch ex As Exception
    MsgBox("Connection filed !!")


    End Try
    End Sub


    End Module


    Ovviamente, inutile dire che ho sempre il messaggio " Connection filed !! "


    Grazie mille a tutti per il tempo dedicatami.

  2. #2
    gli IP di classe 10.x.x.x sono locali, quindi ti puoi connettere solo dalla stessa rete. cosa intendi con "remoto"?

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2017
    Messaggi
    23
    Ciao OPTIME e grazie per il tuo intervento.
    Allora, il DB è su un CLOUD.. quindi mi collego alla VPN e poi tramite la "connessione desktop remoto" di windows inserisco IP e NOME UTENTE per accedere al COUD che ha accesso al DB.

    Spero di essere stato un pochino più preciso.

    GRAZIE MILLE

  4. #4
    il server in cloud NON può avere un indirizzo classe 10. Dici che arrivi al cloud in VPN: è per caso un cloud privato?

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2017
    Messaggi
    23
    beh si.. dell'azienda per cui lavoro.

    Per l'accesso procedo in questo modo: connessione alla VPN (mediante PULSE) e poi, usando la connessione desktop remoto di windows, con IP 10.xxx.xxx.xx e nome utente riesco a raggiungere il cloud... è come avere un altro pc (ma virtuale) con tutti i programmi da usare.

    Dal cloud uso il TOAD e tramite TNSNAME riesco a collegarmi al DB:

    ESEMPIO:

    DB_DYEVO =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS =
    (PROTOCOL = TCP)
    (HOST = 10.xx.x.xx)
    (PORT = 1234)
    )
    )
    (CONNECT_DATA =
    (SERVICE_NAME = DESFMC)
    )
    )

    Dal TOAD scelgo il DB da raggiungere, inserisco Nome Utente e Password... e mi collego.

    FORSE NON E' CORRETTO IL CODICE CHE USO?

    Spero sia stato abbastanza chiaro

    GRAZIE MILLE

  6. #6
    come ti ho già detto, la classe 10.x NON è una classe remota, per questo devi passare attraverso la VPN. Devi farti aiutare dal sistemista della tua azienda a esporre su internet il server mySQL. Sempreché le policies di sicurezza della tua azienda lo permettano!

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2017
    Messaggi
    23
    Grazie... quindi non c'è modo di effettuare una connessione?

  8. #8
    ti ho già risposto, cosa non è chiaro?

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2017
    Messaggi
    23
    Quote Originariamente inviata da optime Visualizza il messaggio
    ti ho già risposto, cosa non è chiaro?


    Ciao,
    leggendo in rete credo di aver capito che è sbagliato usare la libreria MySql.Data.MySqlClient, ma è necessaro usare le librerie OLEDB . Corretto?

    es: (
    Imports System.Data.OleDb)


    Purtroppo non so come fare.
    Ciao e grazie ancora..

  10. #10
    mmmm vedo che non hai letto la mia risposta. Per poter leggere un database devi esporlo. Chiedi al tuo sistemista

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.