Impostazione di una connessione al database remoto
root
al file system e accedere a MySQL come root
.Prerequisiti
Prima di iniziare, è necessario:
- Installare il server MySQL nel server di database.
- Creare un'istanza di database nel server di database.
- Installa il client MySQL nel nodo Web di Adobe Commerce. Per ulteriori informazioni, consultare la documentazione MySQL.
Elevata disponibilità
Utilizzare le linee guida seguenti per configurare le connessioni al database remoto se il server Web o il server di database sono cluster:
-
È necessario configurare una connessione per ogni nodo del server Web.
-
In genere si configura una connessione al database load balancer; tuttavia, il clustering del database può essere complesso e la configurazione dipende dall'utente. L'Adobe non fornisce raccomandazioni specifiche per il clustering del database.
Per ulteriori informazioni, vedere la documentazione MySQL.
Risoluzione dei problemi di connessione
In caso di problemi di connessione a uno degli host, effettua prima il ping dell’altro host per assicurarti che sia raggiungibile. Potrebbe essere necessario consentire le connessioni da un host all'altro modificando le regole firewall e SELinux (se si utilizza SELinux).
Creare la connessione remota
Per creare una connessione remota:
-
Nel server di database, come utente con privilegi
root
, aprire il file di configurazione MySQL.Per individuarlo, immetti il seguente comando:
mysql --help
La posizione viene visualizzata in modo simile al seguente:
Default options are read from the following files in the given order: /etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf
NOTE
Su Ubuntu 16, il percorso è in genere/etc/mysql/mysql.conf.d/mysqld.cnf
. -
Cerca
bind-address
nel file di configurazione.Se esiste, modificare il valore come indicato di seguito.
Se non esiste, aggiungerlo alla sezione
[mysqld]
.bind-address = <ip address of your web node>
Consulta la documentazione di MySQL, soprattutto se disponi di un server Web cluster.
-
Salva le modifiche nel file di configurazione e chiudi l’editor di testo.
-
Riavviare il servizio MySQL:
-
CentOS:
service mysqld restart
-
Ubuntu:
service mysql restart
NOTE
Se MySQL non viene avviato correttamente, cercare l'origine del problema in syslog. Risolvere il problema utilizzando la documentazione MySQL o un'altra origine autorevole. -
Concedere l’accesso a un utente del database
Per consentire al nodo Web di connettersi al server di database, è necessario concedere a un nodo Web l'accesso utente al database sul server remoto.
Questo esempio concede all'utente del database root
l'accesso completo al database sull'host remoto.
Per concedere l'accesso a un utente del database:
-
Accedere al server del database.
-
Connetti al database MySQL come utente
root
. -
Immetti il comando seguente:
GRANT ALL ON <local database name>.* TO <remote web node username>@<remote web node server ip address> IDENTIFIED BY '<database user password>';
Ad esempio:
GRANT ALL ON magento_remote.* TO dbuser@192.0.2.50 IDENTIFIED BY 'dbuserpassword';
NOTE
Se il server Web è in cluster, immettere lo stesso comando su ogni server Web. È necessario utilizzare lo stesso nome utente per ogni server web.
Verificare l'accesso al database
Nell’host del nodo web, immetti il seguente comando per verificare il funzionamento della connessione:
mysql -u <local database username> -h <database server ip address> -p
Se il monitoraggio MySQL viene visualizzato come segue, il database è pronto per Adobe Commerce:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 213 Server version: 5.6.26 MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
Se il server Web è in cluster, immettere il comando su ciascun host del server Web.