Installare le tabelle di sistema (mysql_install_db)
mysql_install_db
crea le tabelle di sistema nel database 'mysql'. MariaDB utilizza queste tabelle per gestire i permessi degli utenti e fornire i dati per il comando 'help'
nel client mysql.
L'utilizzo generico è:
mysql_install_db --user=mysql
Ecco l'elenco delle opzioni di mysql_install_db
:
| Il percorso della directory di installazione di MariaDB |
| Se si usa ' ' e le build non si trovano nella stessa directory, occorre specificare il percorso in cui si trovano |
| Per uso interno. Serve per creare le tabelle di sistema su un host differente |
| Il percorso della directory dei dati |
| Forza mysql_install_db a girare anche se il DNS non funziona. In questo caso, le voci della tabella grant che normalmente utilizzano gli hostname, useranno gli indirizzi IP |
| Il percorso della directory dei dati. Sinonimo di ' '. |
| Non legge i file di configurazione (my.cnf) |
| Legge solo il file di configurazione specificato |
| Per uso interno. Usata dai file RPM durante il processo di installazione |
| Utilizza gli indirizzi IP invece degli hostname nel creare le voci della tabella grant. Utile se il DNS non funziona |
| Il percorso alla directory dei sorgenti di MariaDB. Questa opzione utilizza i binari compilati e supporta i file nel ramo dei sorgenti, utile se si desidera installare le tabelle di sistema senza installare (per il momento) MariaDB |
| Il nome utente che deve essere usato da mysqld. I file e le directory creati da mysqld apperterranno a questo utente. Questa opzione può essere usata solo da root. Per default mysqld utilizza l'utente corrente, al quale apparterranno i file e le directory creati |
mysql_install_db
legge i gruppi [mysqld]
e [mysql_install_db]
da my.cnf. In MariaDB 5.2 e successivi mysql_install_db
legge anche i gruppi [mariadb]
e [client-server]
.
mysql_install_db
avvia il server mysqld in modalità
e invia i comandi necessari per creare e popolare le tabelle di sistema.--
bootstrap
Se si verifica un errore, occorrerà esaminare i log (file *.err) nella directory dei dati (quella specificata con
) per individuare il problema.--
datadir
E' possibile verificare se vi è un errore generico di mysqld avviandolo in questo modo:
mysqld --skip-grant --general-log
Si utilizzi poi il comando mysql
(che nelle installazioni da tarball di solito si trova in /usr/local/mysql/bin/mysql
) per accedere al database mysql e controllare le tabelle:
shell> /usr/local/mysql/bin/mysql -u root mysql MariaDB [mysql]> show tables
Installare una distribuzione binaria
Se si installa un file tar in un percorso non standard, come la propria home directory, e si ha già una precedente versione di MySQL / MariaDB installata, è possibile che si creino dei conflitti con il file my.cnf dentro /etc/
. Spesso questo crea degli errori relativi ai permessi.
Una soluzione può essere eseguire il seguente comando dalla directory di installazione:
./scripts/mysql_install_db --no-defaults --basedir=. --datadir=data
Oppure si può specificare nel file di configurazione (che contiene i percorsi corretti):
./scripts/mysql_install_db --defaults-file=~/.my.cnf
Si veda anche
- mysql_install_db
- La versione per Windows di
mysql_install_db
:mysql_install_db.exe
- Ulteriori informazioni su
mysql_install_db
sono disponibili nel manuale di MySQL.