Inviato da Matteo Mattei / 30th luglio 2011
Il seguente codice PHP può essere utilizzato per exportare una tabella MySQL in formato CSV e quindi facilmente modificabile con MS Excel.
$link = mysql_connect($mysql_host,$mysql_user,$mysql_pass) or die('Could not connect: '.mysql_error());
mysql_select_db($mysql_db,$link) or die('Could not select database: '.$mysql_db);
$query = "SELECT * FROM $tablename ORDER BY id";
$result = mysql_query($query) or die("Error executing query: ".mysql_error());
$row = mysql_fetch_assoc($result);
$line = "";
$comma = "";
foreach($row as $name => $value)
{
$line .= $comma . '"' . str_replace('"', '""', $name) . '"';
$comma = ";";
}
$line .= "\n";
$out = $line;
mysql_data_seek($result, 0);
while($row = mysql_fetch_assoc($result))
{
$line = "";
$comma = "";
foreach($row as $value)
{
$line .= $comma . '"' . str_replace('"', '""', $value) . '"';
$comma = ";";
}
$line .= "\n";
$out.=$line;
}
header("Content-type: text/csv");
header("Content-Disposition: attachment; filename=listino.csv");
echo $out;
exit;
Inviato da Matteo Mattei / 28th dicembre 2010
La domanda di oggi è: vi è mai capitato di dover effettuare il backup di un database LDAP a caldo? Vi mostrerò oggi come effettuarlo creando un file ti tipo LDIF ed effettuare quindi il rispettivo restore (sperando sempre che non ce ne sia effettivamente l’esigenza). Dopo tutto è abbastanza semplice…
BACKUP:
ldapsearch -x -b "dc=example,dc=com" -h 192.168.0.1 -D "cn=manager,dc=example,dc=com" -w secret_password "(objectclass=*)" > backup_file.ldif
RESTORE: (da effettuare su un database vuoto)
ldapadd -D "cn=manager,dc=example,dc=com" -x -w secret_password -h 192.168.0.1 -f backup_file.ldif
Di seguito la spiegazione dei parametri utilizzati:
- -x specifica l’utilizzo della “sample authentication” (anzichè SASL)
- -b “dc=example,dc=com” indica il BaseDN del server, ovvero la posizione dalla quale effettuare la copia di tutti i nodi e le entry contenute
- -h 192.168.0.1 indica l’indirizzo del server LDAP remoto
- -D “cn=manager,dc=example,dc=com” specifica l’identificativo dell’utenza ai fini dell’autenticazione al server remoto
- -w secret permette di specificare la password di accesso per l’utenza precedentemente indicata
- “(objectclass=*)” da istruzione al ldapsearch di restituire tutte le entry
- backup_file.ldif è il file, in formato LDIF, dove salvare il risultato della ricerca.