MySQL: Errore 1046 — nessun database selezionato
La query fa riferimento a una tabella senza specificare il nome dello schema (es. `SELECT * FROM utenti` anziché `dbname.utenti`) e la sessione corrente non ha selezionato alcun database predefinito.
Categoria
Articoli tecnici organizzati per gruppo funzionale.
La query fa riferimento a una tabella senza specificare il nome dello schema (es. `SELECT * FROM utenti` anziché `dbname.utenti`) e la sessione corrente non ha selezionato alcun database predefinito.
Il client tenta di connettersi a un database o di eseguire `USE dbname` ma il nome non corrisponde ad alcuno schema registrato sul server MySQL.
Il server mysqld non riesce a creare un thread per una nuova connessione a causa del superamento del limite dei processi per utente (`ulimit -u` o `TasksMax` di systemd) o RAM esaurita.
La query o il dump SQL contiene istruzioni INSERT con stringhe binarie o blocchi di dati che superano il limite configurato nel parametro `max_allowed_packet` (default 64MB).
Il comando `SET` o il file di configurazione `my.cnf` fa riferimento a una direttiva inesistente o deprecata e rimossa nella versione corrente di MySQL (es. `query_cache_size` rimossa in MySQL 8.0).
Lo specifico account utente ha saturato il numero massimo di connessioni simultanee ad esso assegnato dalla direttiva `max_user_connections`.
Si tenta di modificare a livello di sessione (`SET var = val`) una variabile che ha visibilità esclusivamente globale; richiede `SET GLOBAL var = val`.
La variabile di sistema non può essere modificata a runtime con comandi SQL (es. `datadir` o `innodb_page_size`) e può essere configurata unicamente nel file `my.cnf` prima dell'avvio del demone.