Il seguente diagramma mostra un uso tipico dell'appliance di MYSQLR64 in un'applicazione Web di gruppo eseguita su diversi dispositivi: Con questa impostazione, è possibile avere due o più applicazioni identiche eseguite da diversi dispositivi con il database replicato a tutte le applicazioni nella configurazione master-master. Questo è utile in due casi:
Applicazione master

Applicazione slave

Appliance in uso:
La richiesta del client arriva sul gateway utente. Il gateway inoltra le richieste all'utilità di bilanciamento del carico Web, che indirizza la richiesta a uno dei server Web (web1 o web2). I server Web accedono al database master. L'appliance master si connette all'applicazione remota (slave), l'unica differenza è il server_id dello slave e la configurazione di rete per replicare il database. L'applicazione remota si connette all'appliance master mediante il gateway di vpn che è configurato per consentire la connessione soltanto dal gateway di vpn dell'applicazione remota. Le appliance di master e slave nelle due applicazioni sono eseguite nella configurazione master-master in modo che abbiamo sempre dati identici.
Esempio di configurazione di proprietà (le proprietà che non sono elencate dovrebbero essere lasciate ai loro valori predefiniti):
L'accesso Web a master e slave è disponibile mediante il gateway di admin sulla porta 8080.
master
|
Nome di proprietà |
Valore |
Note |
|
auto_create |
1 |
Creare il database se i volumi sono vuoti. |
|
error_log_filename |
master-db.error |
Nome di file log degli errori che deve essere archiviato sul volume di dati di log. |
|
error_log_level |
errore |
Livello di registrazione errori |
|
server_id |
1 |
Server master (non è obbligatorio che sia 1, dovrebbe essere diverso da server_id sullo slave) |
|
rpl_mode |
master |
Scrive i log binari per eseguire la replica |
master vpn
|
Nome di proprietà |
Valore |
Note |
|
modalità |
server |
Opera come server. |
|
tunnel |
certificati |
Uso dei certificati SSL |
|
tcp_ports |
3306,22 |
Autorizza le state necessarie a MYSQLR64. |
|
ip_addr |
master_vpn_ip |
Indirizzo IP del VPN nell'applicazione master. |
|
remote_host |
slave_vpn_ip |
Indirizzo IP del VPN nell'applicazione slave. |
slave
|
Nome di proprietà |
Valore |
Note |
|
auto_create |
1 |
Creare il database se i volumi sono vuoti. |
|
error_log_filename |
slave-db.error |
Nome di file log degli errori che deve essere archiviato sul volume di dati di log. |
|
error_log_level |
errore |
Livello di registrazione errori |
|
server_id |
2 |
Server slave (non è obbligatorio che sia 2, dovrebbe essere diverso da server_id sul master) |
|
rpl_mode |
slave |
Connette al master |
Vpn slave
|
Nome di proprietà |
Valore |
Note |
|
modalità |
client |
Opera come client. |
|
tunnel |
certificati |
Uso dei certificati SSL |
|
auth_path |
"client1" |
Percorso al file di certificato SSL. |
|
ip_addr |
slave_vpn_ip |
Indirizzo IP del VPN nell'applicazione slave. |
|
remote_host |
master_vpn_ip |
Indirizzo IP del VPN nell'applicazione master. |
L'applicazione remota è una copia esatta, l'unica differenza è l'installazione di rete dell'utente, dell'admin, e delle appliance VPN, connesioni tra l'appliance VPN e master=/=slave, e il server_id dell'appliance di master=/=slave (dovrebbe essere unico).
Per eseguire la migrazione da MYSQLR a MYSQLR64 (e viceversa), è importante non utilizzare i volumi dall'appliance a 32 bit su una a 64 bit (o viceversa) perché questo potrebbe corrompere i dati. Si consiglia invece di scaricare il database sull'appliance precedente e trasferire il file scaricato sull'appliance nuova e quindi importare il database nella nuova appliance.
È possibile utilizzare la stessa procedura per eseguire la migrazione di un database da un'appliance di database precedente (MYSQL, MYSQL5, MYSQL64) o un database mysql non in esecuzione su un'appliance CA AppLogic.
Per eseguire la migrazione del database:
Si ricorda che:
Importante: Quando si creano utenti per il database, verificare che tutti gli utenti sono creati senza restrizioni sull'host da cui connettono. Ad esempio:
mysql> CONCEDERE TUTTI I PRIVILEGI SU *.* A 'monty'@'%'
-> IDENTIFICATO DA 'some_pass' CON OPZIONE CONCESSIONE;
MYSQLR64 usa i seguenti pacchetti Open Source di terze parti oltre ai pacchetti Open Source di terze parti usati dalla loro classe di base LUX64.
|
Software |
Versione |
Modificato |
License |
note |
|
aspell |
0.60.3-7.1 |
No |
LGPLv2.1 |
N/A |
|
aspell-en |
6.0-2.1 |
No |
LGPLv2.1 |
N/A |
|
curl |
7.15.5-2 |
No |
MIT |
N/A |
|
periferica-mapper-evento |
1.02.32-1 |
No |
GPLv2 |
N/A |
|
freetype |
1.02.32-1 |
No |
FTL |
N/A |
|
gmp |
4.1.4-10.el5 |
No |
LGPLV2.1 |
N/A |
|
libidn |
0.6.5-1.1 |
No |
LGPLv2.1 |
N/A |
|
libjpeg |
6b-37 |
No |
Distribuibile |
N/A |
|
libpng |
1.2.10-7.0.2 |
No |
zlib/libpng |
N/A |
|
lvm2 |
2.6.26-2.1.2.8 |
No |
GPLv2.0 |
N/A |
|
mysql |
5.0.77-3.el5 |
No |
GPL |
N/A |
|
mysql-server |
5.0.77-3.el5 |
No |
GPLv2 |
N/A |
|
perl-DBD-MySQL |
3.0007-2.el5 |
No |
Artistic |
N/A |
|
perl-DBI |
1.52-2.el5 |
No |
Artistic |
N/A |
|
php-cli |
5.1.6-23.el5 |
No |
PHPv3.01 |
N/A |
|
php-common |
5.1.6-23.el5 |
No |
PHPv3.01 |
N/A |
|
php-gd |
5.1.6-23.el5 |
No |
PHPv3.01 |
N/A |
|
php-mbstring |
5.1.6-23.el5 |
No |
PHPv3.01 |
N/A |
|
php-mysql |
5.1.6-23.el5 |
No |
PHPv3.01 |
N/A |
|
php-pdo |
5.1.6-23.el5 |
No |
PHPv3.01 |
N/A |
|
rsync |
2.6.8-3.1 |
No |
GPLv2 |
N/A |
|
samba-client |
3.0.28-1.el5_2.1 |
No |
GPLv2 |
N/A |
|
samba-common |
3.0.28-1.el5_2.1 |
No |
GPLv2 |
N/A |
|
sudo |
1.6.8p12-10 |
No |
ISC |
N/A |
|
lighttpd |
1.4.18-1.el5.rf |
No |
BSD |
N/A |
|
perl-IPC-Run |
0.84-1.el5.rf |
No |
Artistic |
N/A |
|
perl-Time-Duration |
1.06-1.el5.rf |
No |
Artistic |
N/A |
|
phpMyAdmin |
2.11.10-1 |
No |
GPLv2 |
N/A |
L'appliance di MYSQLR si blocca all'avvio
Avviandola con MYSQLR 1.6.2, è possibile impostare/modificare una password per l'account di root di database. Tuttavia, l'appliance di MSYQLR ha pochi account principali con diversi nomi di host. Durante l'impostazione/modifica di una password, è necessario utilizzare sempre l'account di root@%. L'account di root@% è quello rispetto a cui le appliance connesse al terminale IN di MYSQLR eseguono l'autenticazione. Gli altri account di root vengono utilizzati solamente da utenti locali e non è necessario impostare una password, altrimenti sarà impossibile avviare l'appliance di MYSQLR.
Nota: non impostare una password per l'account di root@localhost non rappresenta alcun rischio di protezione, perché l'account può essere utilizzato soltanto dagli utenti locali sull'appliance e chiunque abbia accesso all'appliance può modificare la password.
Recupero di un'appliance di MYSQLR con problemi di avvio in seguito alla modifica della password di root di database
Per recuperare un'appliance che non riesce ad avviarsi in seguito a una modifica della password principale del database, procedere come segue:
comp start main.MYSQLR --debug
app start --debug
Qualche secondo dopo che si è avviata l'appliance, dovrebbe essere possibile eseguire l'accesso all'appliance. Non è necessario attendere il timeout dell'appliance.
mysql -p -e "update mysql.user set Password='' where User='root'"
mysqladmin -p flush-privileges
mysql -e 'update mysql.user set password=PASSWORD("NEWPASSWORD") where User="root" and Host="%"'
mysqladmin flush-privileges
| Copyright © 2012 CA. Tutti i diritti riservati. |
|