Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117

    Accedere a MySQL su server locale con client su pc della rete

    Come da titolo ho un server locale (non web) su cui gira Windows Server 2008.

    Ho installato MySQL su questo server e ora avrei necessità di accedere ai dati del DB tramite dei client sviluppati da me in Vb.NET.

    Sinchè il client è sulla macchina sulla quale risiede il server MySQL (quello che viene installato quando si installa il pacchetto) tutto funziona.
    Il problema è che io non devo installare l'applicativo sul server Windows (dove ho installato il DB) ma su vari pc che possono accedere a tale server!

    Ho provato a modificare il file my.ini aggiungendo la riga:

    codice:
    bind-address  =  <indirizzo del server windows>
    ma non è cambiato nulla!

    Ho pure provato a sbloccare i permessi lanciando i comandi:

    codice:
    mysql -p root -u mysql
    mysql> grant all privileges on *.* to 'root'@'*' identified by '<password>' with GRANT OPTION;
    mysql> FLUSH PRIVILEGES;
    Il primo lo lancio con "ESEGUI" di windows ma mi apre il prompt mezzo secondo e lo richiude...

    Allora ho aperto "manualmente" l'eseguibile mysql.exe (nella cartella BYN) e scritto le altre 2 righe ma mi da errore...

    Non essendo pratica di sistemi ecc non so dove sbattere la testa...

    Spero di aver spiegato bene la mia situazione!
    E' abbastanza urgente come situazione se qualcuno avesse consigli gliene sarei super grata!

    Grazie

  2. #2
    nel server mysql devi creare un HOST e USER (ovviamente con relativa password e privilegi) per ogni PC che si connettera' al server. Esiste anche un HOST = tutto il mondo ma credo sarebbe opportuno localizzare la lan.

    HOST = localhost vale per i client residenti sulla stessa macchina
    HOST = % "qualunque client"

    HOST = indirizzo o nome PC permette di connettersi al dato client

    USER = sara' il nome dato allo user di quel determinato client

    non secondario sara' l'apertura del firewall ed il restart (o flush) del server dopo le modifiche per renderle operative.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    ahah si credo di non essere in grado di farlo allora :P Io programmo non son molto avvezza ai server xD

  4. #4
    Originariamente inviato da Veronica80
    ahah si credo di non essere in grado di farlo allora :P Io programmo non son molto avvezza ai server xD
    Non ti abbattere, non è così complicato come sembra.

    codice:
    CREATE USER 'utente_database'@'192.168.0.1/255' IDENTIFIED BY PASSWORD 'latuapassword';
    
    GRANT SELECT , INSERT , UPDATE , DELETE , CREATE TEMPORARY TABLES , 
    LOCK TABLES , EXECUTE ON `nome_database` . * TO 'utente_database'@'192.168.0.1/255' 
    WITH MAX_QUERIES_PER_HOUR 10000 MAX_CONNECTIONS_PER_HOUR 250 MAX_UPDATES_PER_HOUR 10000 MAX_USER_CONNECTIONS 255 ;
    Prima istruzione: crea un utente "utente_database" con password "latuapassword" per la rete 192.168.0.1/255 (ovvero tutti i possibili 254 computer della rete 192.168.0.1 Per sapere questo dato con precisione devi chiedere al sistemista che gestisce la rete).
    Seconda istruzione assegna i permessi sul database nome_database a questo nuovo utente, con dei limiti ovviamente modificabili o totalmente escludibili di query orarie, connessioni orarie, update orari e totale connessioni utente.

    In questo modo dalla rete 192.168.0.1/255, cioè da ogni computer che fa parte della rete specificata, ci si potrà connettere al server con le credenziali utente_database:latuapassword e si potranno fare select, update, insert, delete, eseguire stored procedures, lockare le tabelle e crearne di temporanee sul database nome_database.

    codice:
    mysql -u utente_database -h 192.168.0.1 -p
    > use nome_database
    dove ovviamente 192.168.0.1 è l'IP del server MySql

    Sul server, o sul firewall, dovrai chiedere al sistemista di aprire la porta 3306 come minimo per i client che dovranno avere accesso ai database.

    Resta inteso che è caldissimamente sconsigliabile usare l'utente root per accedere ai database come client e, se possibile, si dovrebbero assegnare solamente i diritti minimi per lavorare all'utente client, ovvero probabilmente update, delete, insert, select, create temporary table e lock table. Altri permessi sono caldamente sconsigliati per un uso normale.

    Buon lavoro

  5. #5
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    ti ringrazio molto lunedì provo!
    Ma quelle istruzioni da dove le inserisco?

    si guarda per il mio applicativo credo che bastino INSERT, UPDATE, SELECT!

  6. #6
    Originariamente inviato da Veronica80
    ti ringrazio molto lunedì provo!
    Ma quelle istruzioni da dove le inserisco?

    si guarda per il mio applicativo credo che bastino INSERT, UPDATE, SELECT!
    Le istruzioni di create e grant le digiti al prompt di Mysql server, dopo esserti autenticata con utenza root; in pratica ti rechi fisicamente sul server, ti logghi in MySql come utente root e al prompt digiti le istruzioni.
    RIcorda di chiedere al sistemista l'informazione sulla rete


  7. #7
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    rieccomi qui! Ok appena mi danno accesso al server provo! Però la vedo male! Non ne capisco nulla :°

    La persona che gestisce il server mi ha già detto che non capisce nulla di mySQL...andiamo bene xD

  8. #8
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    dove ovviamente 192.168.0.1 è l'IP del server MySql
    L'IP del server MySQL è ovviamente l'ip del server su cui ho installato il pacchetto di mysql si? :P
    Scusa faccio un po di confusione perchè vedo che mySQL installa un server suo!

  9. #9
    Originariamente inviato da Veronica80
    L'IP del server MySQL è ovviamente l'ip del server su cui ho installato il pacchetto di mysql si? :P
    Scusa faccio un po di confusione perchè vedo che mySQL installa un server suo!
    Sì è l'ip del server su cui hai installato mysql


  10. #10
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    Ok sto provando sul mio pc in locale prima...

    Allora...come primo problema mi da errore sulla password dicendomi che vuole un hash esadecimale...

    allora ho convertito la mia psw con la funzione "SELECT PASSWORD('miaPSW');

    ed ho inserito quella allora mi da:

    "Query OK, 0 rows affected (0.00 sec)"

    Non credo sia normale che mi dia zero righe o si? :P

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 © 2025 vBulletin Solutions, Inc. All rights reserved.