Estensioni allo standard SQL 99:
- REPLACE (DELETE + INSERT)
- Tipi di dato: medium int, set, enum, text, varchar
- Vincoli di attributo: AUTO_INCREMENT, BINARY, NULL, UNSIGNED, ZEROFILL
- Supporto a espressioni regolari e altro nelle SELECT
- || e && come alternativa a OR e AND
Mancanze:
- INTERSECT
- EXCEPT
- E' necessario prima rimuove i permessi ad un tabella prima di cancellarla (REVOKE)
- Vincoli di integrità SOLO con InnoDB
Le componenti di MySQL (per mia esperienza simili agli altri db):
Syntax parser: parser delle query
Query optimizer: ottimizzatore
Execution Component: Esecutore delle query
Storage manager: Gestisce l'IO
Recovery manager: gestisce la parte volatile (risultato di un'interrogazione i.e.)
Process manager: gestione Thread e connessioni di rete
Funzioni di librerie
Default porta 3306
DB di sistema:
mysql (informazioni del DB, tipo utenti e permessi)
information_schema: database del catalog (informazioni su database, tabelle, viste, ecc.)
Username administrator: root, nessuna password di default (da localhost)
Case INSENSITIVE. Comandi terminati da ;
Connessione al server: Mysql –u root –p
Comando SHOW (DATABASES / TABLES)
Comando DESCRIBE TABLE
Domando: USE databaseName
PRIVILEGI
memorizzati in mysql.users
Privilegi globali: *.*
A livello di database: dbname.*
A livello di tabella: dbname.tableName
Creando un privilegio creo un utente
Posso usare wildcard
SET PASSWORD nomeutente@nomehost = PASSWORD('NewPassword')
Creare un utente: GRANT
Privilege
ON
NomeDatabase.* TO
Utente@PuntoDiAccesso
IDENTIFIED BY
Password
MySQL differenzia i privilegi a seconda del computer di provenienza della richiesta: Utente@% indica l'utente da qualsiasi punto di accesso.
Contenuti gestiti da Michele Bernardi. Non mi assumo alcuna responsabilità sulla correttezza di questi dati, usateli a vostro rischio e pericolo.
Nessun commento:
Posta un commento