Appunti per MARIADB - mysql
dopo aver fatto l'installazione eseguire
mysql_secure_installation
poi autenticarsi
mysql -u root -p
visualizzare database presenti;
show databases;
creare un nuovo database specificando contemporaneamente il charset
CREATE DATABASE dbname DEFAULT CHARACTER SET 'utf8';
Per la questione characterset bisogna tenere presente che per una maggiore compatibilità a livello di memorizzazione server è meglio usare UTF.
UTF può essere 8 16 o 32. Le differenze sono per lo spazio di archiviazione da 8 a 32 (meglio 8), di performance (meglio 32), una via di mezzo 16 (più compatibile coni caratteri cinesi
diciamo che se non si prevede un database di grandi dimensioni senza emoticons va bene un utf32.
poi c'è l'MB4 solo sull'UTF8 che serve per includere la possiblità di memorizzare gli emoticons
altra questione importante è la possibilità di impostare un set di caratteri per la connessione al database dal client e viceversa ( character_set_client e character_set_result).
questo può essere utile da impostare nel caso in cui avvengono delle connessioni da windows con un suo client ad es un programma fatto con microsoft che usa il charset cp850.
con linux e connessioni php va bene utf
Per la creazione delle tabelle si può specificare direttamente la collazione.
per il motore di archiviazione delle tablle, si fa per le tabelle appunto e non per il db. ci potrebbe creare una tablla innodb, una myisam e una tokodb che è uno dei nuovi engine e dovrebbe essere anche più performante.
utilizzare un database specifico per creare tabelle o fare altro;
use nomedb;
c'è anche un comando utile che è ;
show columns from nometabella;
Informazioni sugli indici
https://www.mrwebmaster.it/database/diversi-tipi-join-inner-outer-cross-join_12029.html