Differenze tra le versioni di "Mysql5"
m (→JobScheduler) |
|||
Riga 58: | Riga 58: | ||
= Problemi di accesso a MySQL = | = Problemi di accesso a MySQL = | ||
+ | == mysql daemon == | ||
+ | Per verificare se il supporto a SSL è attivo, è necessario collegarsi al db: | ||
+ | mysql -u <username> -p | ||
+ | ed eseguire il comando: | ||
+ | SHOW VARIABLES LIKE '%ssl%'; | ||
+ | Nel caso in cui compaiano le righe: | ||
+ | +---------------+-----------------+ | ||
+ | | Variable_name | Value | | ||
+ | +---------------+-----------------+ | ||
+ | | have_openssl | YES | | ||
+ | | have_ssl | YES | | ||
+ | +---------------+-----------------+ | ||
+ | è necessario disattivare il supporto a SSL agendo sulla configurazione del server: | ||
+ | /etc/mysql/mysql.conf.d/mysqld.cnf | ||
+ | aggiungendo la riga: | ||
+ | skip_ssl | ||
+ | e rilanciando il server: | ||
+ | systemctl restart mysql.service | ||
+ | <br> | ||
== JAVA == | == JAVA == | ||
* javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate) | * javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate) |
Versione delle 11:37, 3 mag 2021
Indice
MySQL 5.x - Appunti di gestione
Grant privilegi di accesso al DB
Grant fornendo l'indirizzo IP
mysql -u userLogin --password=passLogin --database=mysql -e "GRANT SELECT ON db.* TO 'user'@'172.16.0.%' IDENTIFIED BY '*****';"
Grant fornendo il FQDN
mysql -u userLogin --password=passLogin --database=mysql -e "GRANT SELECT ON db.* TO 'user'@'%.netsitech.com' IDENTIFIED BY '*****';"
Attivazione del log delle query
mysqld --log=<percorso-del-file-di-log> --user=<utente-che-esegue-il-servizio> Esempio: mysqld --log=/var/log/mysql-queries.log --user=mysql
Comando di backup
di un database specifico
mysqldump [--comments] [--disable-keys] [--hex-blob] -u <utente> -p <database> [table [...]] > <percorso-e-nome-del-file-di-backup>
Esempio mysqldump -u root -p bacula > D:\Backup\MySQL\FullBackupMySQL.sql
esegue il backup del database bacula.
di un gruppo di database
mysqldump --databases --comments --disable-keys --hex-blob -r <percorso-e-nome-del-file-di-backup> -u <utente> -p<password> <database1> <database2> [...]
Esempio mysqldump" --databases --comments --disable-keys --hex-blob -r D:\Backup\MySQL\FullBackupMySQL.sql -u root -p****** mysql bacula dotproject
esegue il backup dei database mysql, bacula e dotproject
di tutti i database
mysqldump --all-databases --comments --disable-keys --hex-blob -r <percorso-e-nome-del-file-di-backup> -u <utente> -p<password>
Esempio mysqldump --all-databases --comments --disable-keys --hex-blob -r D:\Backup\MySQL\FullBackupMySQL.sql -u root -p******
di un elenco di tabelle (note per prefisso)
mysqldump -u [user] -p databasename `echo "show tables like 'prefix_%';" | mysql -u [user] -p databasename | sed '/Tables_in/d'` > [destination-file].sql
Comando di restore
di un database specifico
mysql -u <utente> -p -D<database> [table [...]] < percorso-e-nome-del-file-di-backup>
Esempio mysql -u root -p -Dbacula < D:\Backup\MySQL\FullBackupMySQL.sql
esegue il restore del contenuto del file FullBackupMySQL.sql sul database bacula.
Spostamento dei file del database
Per spostare i file del database in una unità diversa è possibile procedere come segue:
- Arrestare l'istanza di MySQL
- Modificare tutti i riferimenti contenuti nel file di configurazione utilizzato nel lancio dell'istanza (default my.ini)
- Spostare i file nella nuova locazione
- Avviare l'istanza del database
Problemi di accesso a MySQL
mysql daemon
Per verificare se il supporto a SSL è attivo, è necessario collegarsi al db:
mysql -u <username> -p
ed eseguire il comando:
SHOW VARIABLES LIKE '%ssl%';
Nel caso in cui compaiano le righe:
+---------------+-----------------+ | Variable_name | Value | +---------------+-----------------+ | have_openssl | YES | | have_ssl | YES | +---------------+-----------------+
è necessario disattivare il supporto a SSL agendo sulla configurazione del server:
/etc/mysql/mysql.conf.d/mysqld.cnf
aggiungendo la riga:
skip_ssl
e rilanciando il server:
systemctl restart mysql.service
JAVA
- javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
Il problema è causato, a partire dalla versione 5.7 del software su server (Community Edition) quando ci si collega con un client che non implementa correttamente le specifiche SSL attese durante l'handshake.
Per risolvere il problema è necessario aggiungere il seguente parametro alla stringa di connessione:
&useSSL=false
Hibernate
Aggiungere le seguenti righe al file di configurazione di Hibernate:
hibernate.connection.useSSL=false hibernate.connection.requireSSL=false