Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 28
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542

    Path mysql per eseguire mysqldump (server linux)

    Ciao a tutti,
    su un server linux in hosting non riesco ad eseguire mysqldum da php tramite system().
    Deduco che devo specificare la path per aggangiare mysqldump.exe ma non la conosco.
    Non posso neanche accedere ai file di configurazione di mysql... almeno credo.

    Ho provato con "/usr/bin/mysqldump"

    Qualcuno sa dirmi dove sbaglio?

    posto lo script che uso:

    Codice PHP:
        $host="localhost";
        
    $user="nomeutente";
        
    $password="miapassword";
        
    $database="miodb";
        
    $dump "/usr/bin/mysqldump";
        
        
    $db mysql_connect($host$user$password);
        if (
    $db == FALSE) die ("Errore nella connessione); 
        mysql_select_db(
    $database$db) or die ("Errore select database.");
      
        
    $cmd = "$dump --host=$host --port=3306 --user=$user --password=$password  $database db.sql"; 
        system(
    $cmd);

        mysql_close();
        echo "
    Backup eseguito"; 
    Non da errore e mostra sempre "Bakup eseguito" ma non crea il file db.sql.
    I permessi della cartella dove gira lo script e dove dovrebbe creare il file db.sql sono 777

    Nel Plesk dell'host leggo:
    Versione psa v8.3.0_build83080204.11 os_FreeBSD 6.1
    dovrebbe essere la versione di Linux?

    Qualcuno potrebbe aiutarmi?

    Grazie
    Guidino

  2. #2
    Utente di HTML.it L'avatar di rufo80
    Registrato dal
    Dec 2008
    Messaggi
    16
    io uso mysqldump in questo modo :

    mysqldump --host=$host --user=$user --password=$password $database > /home/diego/Scrivania/db.sql

    1)non serve scrivere "/usr/bin/mysqldump" ma soltanto "mysqldump"

    2)devi inserire il path completo di dove vuoi eseguire il dump del DB

    3)ti appare la scritta "Backup eseguito" perchè non controlli che "system($cmd)" venga eseguito, infatti l'unica IF che compare nel tuo codice si riferisce alla connessione del DB

    4)ultimo punto ma non meno importante devi verificare che il tuo hosting ti dia accesso alla shell altrimenti non puoi farci niente

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542
    Grazie,
    ma come faccio a verificare se posso accedere alla shell?

    da phpinfo(); le variabili che si riferiscono a shell mi indicano solo il percorso dove si trova il file che mi fa eseguire la shell ma non so dove cercare per capire se la shell è abilitata:
    shell /usr/local/bin/bash
    _ENV["SHELL"] /usr/local/bin/bash

    in verità non esegue neanche
    system("dir > prova.txt");

    stesso discorso, non dà errore e non crea il file prova.txt
    Spero che il problema sia nella specifica della path di dove voglio creare il file.

    Ma non dovrebbe creare il file nella cartella dove gira lo script?
    Guidino

  4. #4
    Utente di HTML.it L'avatar di rufo80
    Registrato dal
    Dec 2008
    Messaggi
    16
    per sapere se puoi accedere alla shell prova a mandare una mail al tuo hosting.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542
    Grazie, chiedo i permessi al mio hosting
    Guidino

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542
    Non ho accesso alla shell quindi non posso eseguire comandi System o exec.

    Qualcuno sa dirmi come individuare un buon server che offre anche accesso alla shell?
    Bisogna necessariamente migrare su un server dedicato?

    Grazie
    Guidino

  7. #7
    Utente di HTML.it L'avatar di rufo80
    Registrato dal
    Dec 2008
    Messaggi
    16
    potresti usare phpmyadmin per eseguire il backup del DB; solitamente è tra le opzioni che un hosting mette a disposizione

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542
    Grazie rufo80.
    Si, per fare il backup di tutto il database posso usare phpMyAdmin ma voglio dare agli utenti una procedura con cui poter fare il backup dei dati della propria azienda quindi una procedura php che lanci mysqldum con la clausola --where=\"id_azienda=$idAzienda\".
    Questo è il mio scopo.
    So che non si può parlare sul forum di provider ma come faccio a trovare un host che mi dia accesso alla shell?

    Grazie mille per il tuo prezioso supporto.
    Guidino

  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542
    Scusa rufo80,
    mi potresti postare in privato il nome del tuo provider, visto che tu puoi accedere alla shell del server?

    Grazie mille
    Guidino

  10. #10
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da rufo80
    potresti usare phpmyadmin per eseguire il backup del DB; solitamente è tra le opzioni che un hosting mette a disposizione
    ma anche un cronjob

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.