English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Sezione 1: Introduzione a MariaDB (l'introduzione a MySQL è omessa)
Il sistema di gestione del database MariaDB è un ramo di MySQL, mantenuto principalmente dalla comunità open source, e adotta la licenza GPL. L'obiettivo di MariaDB è essere completamente compatibile con MySQL, inclusi API e riga di comando, rendendolo facile da utilizzare come sostituto di MySQL. Nel campo del motore di archiviazione, utilizza XtraDB (in inglese: XtraDB) per sostituire InnoDB di MySQL. MariaDB è guidata dal fondatore di MySQL, Michael Widenius (in inglese: Michael Widenius), che in precedenza ha venduto la sua azienda MySQL AB a SUN per 1 miliardo di dollari, e con l'acquisizione di SUN da parte di Oracle, la proprietà di MySQL è passata nelle mani di Oracle. Il nome MariaDB deriva dal nome della figlia di Michael Widenius, Maria.
MariaDB utilizza il motore di archiviazione basato su transazioni Maria, sostituendo il motore di archiviazione MyISAM di MySQL, utilizza XtraDB di Percona e la variante di InnoDB, i sviluppatori di ramo sperano di fornire l'accesso alle prestazioni InnoDB di MySQL 5.4 in arrivo. Questa versione include anche i motori di archiviazione PrimeBase XT (PBXT) e FederatedX.
Sezione 2: Creazione, eliminazione, selezione e utilizzo dei tipi di dati dettagliati di MariaDB (Nota: la demo di questo articolo è eseguita con privilegi di root)
(1) Creazione del database MariaDB
1.1: Creazione del database utilizzando mysqladmin
[root@test01 10.19.166.166 ~ ] # mysqladmin -u root -p create testdb1 Inserisci la password: //Inserisci la password del database MariaDB [root@test01 10.19.166.166 ~ ] # mysql MariaDB [(nessuno)]> show databases; +--------------------+ | Database | +--------------------+ | hellodb | | information_schema| | mydb | | mysql | | performance_schema| | test | | testdb | | testdb1 |<---Database creato +--------------------+
1.2: Accesso al database MariaDB per creare
MariaDB [(nessuno)]> create database testdb2; Query OK, 1 riga influenzata (0.00 sec) MariaDB [(nessuno)]> show databases; +--------------------+ | Database | +--------------------+ | hellodb | | information_schema| | mydb | | mysql | | performance_schema| | test | | testdb | | testdb1 | | testdb2 |<---Database creato +--------------------+
(2) Eliminazione del database MariaDB
2.1: Eliminazione del database utilizzando mysqladmin
[root@test01 10.19.166.166 ~ ] # mysqladmin -u root -p drop testdb1 Inserisci la password: //Inserisci la password del database //Dopo aver eseguito il comando di eliminazione sopra, verrà visualizzata una finestra di dialogo che chiede di confermare l'eliminazione di questo database Eliminare il database potrebbe essere una cosa molto negativa da fare. Tutti i dati memorizzati nel database saranno distrutti. Vuoi davvero eliminare il database 'testdb1' [s/N] s //Elimina Il database "testdb1" è stato eliminato
Accesso e visualizzazione
MariaDB [(nessuno)]> show databases; //Conferma che testdb1 è stato eliminato +--------------------+ | Database | +--------------------+ | hellodb | | information_schema| | mydb | | mysql | | performance_schema| | test | | testdb | | testdb2 | +--------------------+
2.2: Accesso al database MariaDB per eliminare
MariaDB [(nessuno)]> drop database testdb2; Query OK, 0 righe influenzate (0.00 sec) MariaDB [(nessuno)]> show databases; //Conferma che testdb2 è stato eliminato +--------------------+ | Database | +--------------------+ | hellodb | | information_schema| | mydb | | mysql | | performance_schema| | test | | testdb | +--------------------+
(3) Seleziona il database MariaDB e visualizza tutte le tabelle sotto il database selezionato
MariaDB [(nessuno)]> show databases; //Visualizza tutti i database +--------------------+ | Database | +--------------------+ | hellodb | | information_schema| | mydb | | mysql | | performance_schema| | test | | testdb | +--------------------+ 7 rows in set (0.00 sec) MariaDB [(none)]> use mydb //Select the mydb database Database changed MariaDB [mydb]> show tables; //View all table information under the mydb database +----------------+ | Tables_in_mydb | +----------------+ | ssc | | t1 | | tb2 | | tb4 | | tb5 | +----------------+ 5 rows in set (0.00 sec)
(4) MariaDB data types
The data field types defined in MariaDB are very important for database optimization
MariaDB supports multiple types, which can be roughly divided into three categories: numeric, date/time, and string (character type)
4.1 Numeric type
tipo | dimensione | Range (signed) | Range (unsigned) | utilizzo |
TINYINT | 1 byte | (-128, 127) | (0, 255) | Small integer value |
SMALLINT | 2 byte | (-32 768, 32 767) | (0, 65 535) | Large integer value |
MEDIUMINT | 3 byte | (-8 388 608, 8 388 607) | (0, 16 777 215) | Large integer value |
INT or INTEGER | 4 byte | (-2 147 483 648, 2 147 483 647) | (0, 4 294 967 295) | Large integer value |
BIGINT | 8 byte | (-9 223 372 036 854 775 808, 9 223 372 036 854 775 807) | (0, 18 446 744 073 709 551 615) | Extremely large integer value |
FLOAT | 4 byte | (-3.402 823 466 E+38, 1.175 494 351 E-38), 0, (1.175 494 351 E-38, 3.402 823 466 351 E+38) | 0, (1.175 494 351 E-38, 3.402 823 466 E+38) | precisione singola valori a virgola mobile |
DOUBLE | 8 byte | (1.797 693 134 862 315 7 E+308, 2.225 073 858 507 201 4 E-308), 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) | 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) | double precisione valori a virgola mobile |
DECIMAL | per DECIMAL(M,D), se M>D, è M+2 altrimenti è D+2 | dipende dai valori di M e D | dipende dai valori di M e D | valori decimali |
4.2 Tipi di data e ora
I tipi di data e ora che rappresentano i valori di tempo sono DATETIME, DATE, TIMESTAMP, TIME e YEAR.
Ogni tipo di tempo ha un intervallo di valori validi e un valore "zero", che viene utilizzato quando si specifica un valore non legittimo che MySQL non può rappresentare.
Il tipo TIMESTAMP ha una caratteristica di aggiornamento automatico speciale, che verrà descritta in seguito.
tipo | dimensione (byte) | intervallo | formato | utilizzo |
DATE | 3 | 01/01/1000/31/12/9999 | YYYY-MM-DD | valore di data |
TIME | 3 | '-838:59:59'/'838:59:59' | HH:MM:SS | valore di tempo o durata |
YEAR | 1 | 1901/2155 | YYYY | valore dell'anno |
DATETIME | 8 | 01/01/1000 00:00:00/31/12/9999 23:59:59 | YYYY-MM-DD HH:MM:SS | valori misti di data e ora |
TIMESTAMP | 8 | 01/01/1970 00:00:00/2037 a un certo punto | YYYYMMDD HHMMSS | valori misti di data e ora, timestamp |
4.3 Tipi di stringa
I tipi di stringa sono CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM e SET. Questa sezione descrive come funzionano questi tipi e come usarli nelle query.
tipo | dimensione | utilizzo |
CHAR | 0-255 byte | stringa fissa |
VARCHAR | 0-255 byte | stringa variabile |
TINYBLOB | 0-255 byte | stringa binaria di lunghezza non superiore a 255 caratteri |
TINYTEXT | 0-255 byte | stringa breve |
BLOB | 0-65 535 byte | Dati testuali lunghi in forma binaria |
TEXT | 0-65 535 byte | Dati testuali lunghi |
MEDIUMBLOB | 0-16 777 215 byte | Dati testuali di lunghezza media in forma binaria |
MEDIUMTEXT | 0-16 777 215 byte | Dati testuali di lunghezza media |
LOGNGBLOB | 0-4 294 967 295 byte | Grandi dati testuali in forma binaria |
LONGTEXT | 0-4 294 967 295 byte | Grandi dati testuali |
I tipi CHAR e VARCHAR sono simili, ma conservano e recuperano in modo diverso. La loro lunghezza massima e se i spazi in coda vengono conservati sono diversi. Non si esegue una conversione di maiuscole e minuscole durante il processo di archiviazione o recupero.
Le classi BINARY e VARBINARY sono simili a CHAR e VARCHAR, ma contengono stringhe binarie invece di stringhe non binarie. Questo significa che contengono stringhe di byte invece di stringhe di caratteri. Questo implica che non hanno un set di caratteri e l'ordinamento e la comparazione sono basati sul valore numerico dei byte del valore della colonna.
BLOB è un oggetto grande binario, che può contenere una quantità variabile di dati. Ci sono 4 tipi di BLOB: TINYBLOB, BLOB, MEDIUMBLOB e LONGBLOB. La differenza tra di loro è solo la lunghezza massima dei valori che possono contenere.
Ci sono 4 tipi di TEXT: TINYTEXT, TEXT, MEDIUMTEXT e LONGTEXT. Questi corrispondono a 4 tipi di BLOB, con lunghezze massime e richieste di archiviazione identiche.
Dichiarazione: il contenuto di questo articolo è stato raccolto da Internet, di proprietà del rispettivo autore. Il contenuto è stato caricato autonomamente dagli utenti di Internet, il sito web non detiene i diritti di proprietà, non è stato editato manualmente e non assume responsabilità legali correlate. Se trovi contenuti sospetti di violazione del copyright, ti preghiamo di inviare una e-mail a: notice#oldtoolbag.com (al momento dell'invio dell'e-mail, sostituisci # con @) per segnalare il problema e fornire prove pertinenti. Una volta verificata, il sito eliminerà immediatamente il contenuto sospetto di violazione del copyright.