Blog : Database

Importare Database mySql grandi dimensioni

Importare Database mySql grandi dimensioni

Può accadere di dovere trasferire un database mySql su un altro server o ripristinare un backup effettuato. Quando però ci troviamo di fronte al dover importare un database mysql di grandi dimensioni, questa operazione potrebbe non essere possibile utilizzando i canali convenzionali. Probabilmente, infatti, ti sarai recato sul tuo pannello di phpMyAdmin e dopo aver selezionato il tuo database e hai avviato la procedura di Import ma questa non è andata a buon fine in quanto il database è troppo grande con conseguente messaggio di errore ” stai probabilmente cercando di caricare sul server un file troppo grande”

Alcuni cominciano quindi a ricorre a pratiche masochiste come dividere database mysql cercando di avere file di dump più piccoli da caricare singolarmente. Altri, hanno sufficienti nozioni per effettuare l’import utilizzando un accesso SSH al database utilizzando quindi le funzioni di dump. Altri cominciano a smanettare con le variabili d’ambiente cercando di estendere i limiti di upload del database.

Vorrei però trattare un metodo molto semplice ed intuitivo per importare db mysql utilizzando un applicativo chiamato MySQLDumper.

Come importare un database troppo grande

Per utilizzare MySQL Dumper è sufficiente scaricare l’applicativo qui . Effettuata questa operazione, procediamo quindi a caricare il file all’interno della root principale del nostro sito web.

Scompattiamo quindi il file caricato e accediamo, attraverso il browser, alla pagina http://miodominio.xyz/msd1.24.4/install.php .

Ci verrà quindi richiesto di selezionare la lingua scelta e clicchiamo quindi su Installazione.

Nella schermata che compare, ci verrà richiesto di inserire i parametri di accesso al nostro database quali: host, nome database, user e password.

Se il server sarà raggiungibile con le informazioni date, comparirà il messaggio di connessione avvenuta con successo e passiamo quindi a salvare la configurazione.

Successivamente carichiamo il nostro database da importare (in formato sql o zip) nella cartella msd1.24.4/work/backup 

 

Nel pannello di controllo di MySQLDumper, clicchiamo sulla voce di menù Ripristina, selezioniamo il database che vogliamo caricare (quello inserito nella cartella backup) e clicchiamo sul tasto Ripristina.

In poco tempo la procedura verrà completata ed avremo il nostro database caricato con successo.

Elenco password email rubate

Elenco password email rubate

Di recente in Italia si stanno diffondendo email di spamm che avvertono che l’indirizzo email è stato hackerato e, dietro minaccia di diffusione di dati personali, viene richiesto un pagamento in BitCoin.  La stragrande maggioranza di queste mail sono ovviamente una truffa basata sul nulla dove la cosa più intelligente da fare è semplicemente quella di eliminarla.

A volte però la password email che compare nell’email di truffa è proprio quella da noi usata.

Come hanno fatto a reperire la nostra password?

Semplice, molto probabilmente ci siamo iscritti a qualche servizio online inserendo il nostro indirizzo email ed una password per accedere al servizio che, spesso, coincide con la password email perché si sa… non abbiamo molta voglia di memorizzare altre credenziali.

Questi sistemi a cui ci siamo iscritti sono stati scritti male, conservando le credenziali fornite in chiaro sui loro database (senza quindi l’utilizzo di algoritmi di cifratura come MD5 o SHA1) oppure utilizzano la cifratura ma senza vincolare la password affinché questa sia robusta.

Quando questi sistemi vengono compromessi dagli hacker, tutti gli account vengono riversati nella rete rendendo disponibile una mole enorme di dati tra cui quindi le password.

Questa può quindi essere utilizzata per accedere alla vostra casella di posta od ad altri servizi online come Social Network ed altro.

Come possiamo sapere se nel web gira la nostra password.

Per fortuna ci sono dei servizi che ci permettono di sapere se, a fronte di un indirizzo email, esiste una password che gira per la rete disponendo quindi di un database di password email rubate.

have i been pwned: questo servizio consente di inserire il proprio indirizzo email per verificare se all’interno della rete sta girando la nostra password. Il sistema dirà inoltre su quali siti la password è stata rubata e le motivazioni tecniche su come questo sia potuto succedere

 

Join SQL Esempi: left, right, full, inner

Join SQL Esempi: left, right, full, inner

SQL JOIN

Nel campo dei database SQL il JOIN rappresenta una clausola  utilizzata percombinare righe o tuple tra due o più tabelle basandosi tra relazioni tra di loro.

Tipi di JOIN SQL:

  • INNER JOIN: Restituisce record che hanno valori corrispondenti in entrambe le tabelle
  • LEFT JOIN: Restituisce tutti i record della tabella di sinistra e i record che corrispondono della tabella di destra
  • RIGHT JOIN: Restituisce tutti i record della tabella di destra e i record che corrispondono della tabella di sinistra
  • FULL JOIN: Restituisce tutti i record quando c’è una corrispondenza con la tabella di sinistra o quella di destra.

Come utile schema di riepilogo propongo questa immagine utile per i promemoria 😉

Convert database from mssql to mysql Online

Convert database from mssql to mysql Online

Spesso si ha la necessità di convertire un database Microsoft SQL Server o MSSQL nel suo omonimo open source MySql. Per rendere questa operazione molto veloce, ci vengono in aiuto alcuni tool che ci permettono di convertire un database da mssql a mysql online. Il migliore tra questi, da me provato, è quello fornito da RebaseData.

Possiamo quindi trovare il tool qui: Convert database from mssql to mysql Online

Possiamo quindi procedere a fare un upload del nostro database in formato mssql con estensione .bak per aver restituito lo stesso DB in formato mysql con estensione .sql

Il servizio mette inoltre a disposizione una API raggiungibile da remoto attraverso una chiamata CURL:

curl -F files[]=@database.bak ‘https://www.rebasedata.com/api/v1/convert?outputFormat=mysql&errorResponse=zip’ -o output.zip

 

Buona Conversione! 😉

Convertire Database

Convertire Database

Una delle problematiche più frequenti in ambito aziendale, è quello di dover convertire database e/o di fare delle operazioni di filtraggio e controllo dei campi.

In commercio esistono diversi programmi in grado di effettuare una semplice conversione da un tipo di database ad un altro, ad esempio, convertire un DB Access in MySql.

Spesso però questi non sono sufficienti in quanto le problematiche di conversione cambiano spesso ed ogni conversione richiede un software ad Hoc.

Nella mia esperienza mi sono occupato spesso di conversioni di database realizzando programmi di conversione specializzate per le richieste del cliente.

La mia metodica nasce da un diagramma di flusso molto semplice ma al contempo efficace.

convertitoredatabase

Step 1 : Come prima fase, un generico programma di conversione si occupa di leggere l’attuale database

 

Step 2: Si individuano le posizioni dei campi tenendone traccia localmente e scorrendo tutte le righe che compongono la base di dati.

 

Step 3: Si applicano Filtri e/o controlli sui Campi di qualsiasi genere come eliminare spazi bianchi, scrivere un valore in maiuscolo o effettuare operazioni logiche o matematiche.

 

Step 4: A partire dalla base di dati esistente, è possibile trovare ulteriori dati che andranno successivamente a popolare il nuovo database. Ad esempio trovare le coordinate satellitari di una città.

 

Step 5: Utilizzando il nuovo linguaggio database, si procede alla scrittura del nuovo file della base di dati, che viene successivamente testata in locale.

 

Step 6: La nuova base di dati viene importata nel nuovo database.

 

 

 

Case Study

Una conversione di cui mi sono occupato, consisteva nel trasformare un file Excell in un database MySql e renderlo compatibile con un plugin WordPress che ovviamente lavorava con nomi di campi già preconfigurati. La trasformazione richiedeva inoltre l’individuazione delle coordinate satellitari (latitudine e longitudine) che dovevano successivamente popolare delle tabelle utilizzate da Google Maps.

Memex il nuovo motore del Deep Web

Memex il nuovo motore del Deep Web

Memex, questo il nome del nuovo motore di ricerca implementato dal DARPA (Defense Advance Research Projects Agency) del Ministero della Difesa degli Stati Uniti. L’obiettivo di questo motore è quello di indicizzare ed esplorare il Deep Web ovvero tutto ciò che riguarda la droga, la criminalità informatica e la pedopornografia.

Contrariamente agli attuali motori di ricerca, Memex restituisce come risultati di ricerca dei Grafi che rappresentano le relazioni tra i diversi siti internet.

Un’altra caratteristica importante è quella di riuscire ad operare all’interno della rete TOR ovvero quella porzione di internet che in un certo senso consente di navigare anonimi.

Attualmente Memex è in versione beta e rilasciato ad agenzie governative.

 

Installare Neo4J in Ubuntu Server

Installare Neo4J in Ubuntu Server

Nell’ottica del nuovo web sempre più orientato ai Social Network, anche la visione dei database sta profondamente cambiando orientandosi spesso verso i Database NoSql a Grafi.

Una tra le maggiori soluzioni è rappresentata da Neo4j, un database non relazione orientato ai grafi sviluppato e supportato da Neo Technology.

Vediamo in pochi passi come installare questo database su un Server Ubuntu.

Installazione Neo4J

Aggiungiamo la chiave di Neo4j al nostro APT manager:

wget -O - http://debian.neo4j.org/neotechnology.gpg.key | apt-key add -

Aggiungiamo Neo4J alla nostra lista sorgenti:

echo 'deb http://debian.neo4j.org/repo stable/' > /etc/apt/sources.list.d/neo4j.list

Aggiorniamo il package manager:

apt-get update

Installiamo Neo4J:

apt-get install neo4j

Perfetto! Neo4J dovrebbe ora girare. Per verificarne lo stato, testiamo con il comando:

service neo4j-service status