Created
April 27, 2016 14:39
-
-
Save alastori/c956060e4d60ece79e4f0bb4c656ec4b to your computer and use it in GitHub Desktop.
MySQL 5.7 - testing port conflict when trying to configure multiple instances
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Criando 2 diretorios de dados para 2 instancias de teste | |
mysqld --no-defaults --user=mysql --initialize-insecure \ | |
--explicit_defaults_for_timestamp --datadir=/tmp/mysqldata1 \ | |
--log-error=/tmp/mysqldata1/mysqld1.log | |
mysqld --no-defaults --user=mysql --initialize-insecure \ | |
--explicit_defaults_for_timestamp --datadir=/tmp/mysqldata2 \ | |
--log-error=/tmp/mysqldata2/mysqld2.log | |
## Inicializando uma instancia mysql na porta 13001: | |
mysqld --no-defaults --user=mysql -P 13001 --datadir=/tmp/mysqldata1 \ | |
--log-error=mysqld1.log --pid-file=mysql1.pid --socket=mysqld1.sock & | |
[1] 27722 | |
sleep 8 | |
ps -ef | grep mysqld | |
mysql 27722 27627 3 00:26 pts/2 00:00:00 mysqld --no-defaults --user=mysql -P 13001 --datadir=/tmp/mysqldata1 --log-error=mysqld1.log --pid-file=mysql1.pid --socket=mysqld1.sock | |
root 27752 27627 0 00:26 pts/2 00:00:00 grep --color=auto mysqld | |
netstat -ap | grep mysqld | |
tcp6 0 0 [::]:13001 [::]:* LISTEN 27722/mysqld | |
unix 2 [ ACC ] STREAM LISTENING 109603 27722/mysqld mysqld1.sock | |
tail -3 /tmp/mysqldata1/mysqld1.log | |
2016-04-27T14:26:14.478967Z 0 [Note] Event Scheduler: Loaded 0 events | |
2016-04-27T14:26:14.479182Z 0 [Note] mysqld: ready for connections. | |
Version: '5.7.13-enterprise-commercial-advanced' socket: 'mysqld1.sock' port: 13001 MySQL Enterprise Server - Advanced Edition (Commercial) | |
cat /tmp/mysqldata1/mysqld1.log |grep ERROR | |
##(sem erros) | |
## Tentanto inicializar outra instancia na mesma porta 13001: | |
mysqld --no-defaults --user=mysql -P 13001 --datadir=/tmp/mysqldata2 \ | |
--log-error=mysqld2.log --pid-file=mysql2.pid --socket=mysqld2.sock & | |
[2] 27758 | |
sleep 8 | |
[2]+ Exit 1 mysqld --no-defaults --user=mysql -P 13001 --datadir=/tmp/mysqldata2 --log-error=mysqld2.log --pid-file=mysql2.pid --socket=mysqld2.sock | |
##(processo mysqld não fica no ar) | |
ps -ef | grep mysqld | |
mysql 27722 27627 1 00:26 pts/2 00:00:00 mysqld --no-defaults --user=mysql -P 13001 --datadir=/tmp/mysqldata1 --log-error=mysqld1.log --pid-file=mysql1.pid --socket=mysqld1.sock | |
root 27786 27627 0 00:26 pts/2 00:00:00 grep --color=auto mysqld | |
netstat -ap | grep mysqld | |
tcp6 0 0 [::]:13001 [::]:* LISTEN 27722/mysqld | |
unix 2 [ ACC ] STREAM LISTENING 109603 27722/mysqld mysqld1.sock | |
##(apenas o processo antigo mysqld permanece respondendo na porta 13001) | |
tail -3 /tmp/mysqldata2/mysqld2.log | |
2016-04-27T14:26:24.194944Z 0 [Note] Shutting down plugin 'binlog' | |
2016-04-27T14:26:24.195482Z 0 [Note] mysqld: Shutdown complete | |
cat /tmp/mysqldata2/mysqld2.log |grep ERROR | |
2016-04-27T14:26:22.546884Z 0 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use | |
2016-04-27T14:26:22.546905Z 0 [ERROR] Do you already have another mysqld server running on port: 13001 ? | |
2016-04-27T14:26:22.546929Z 0 [ERROR] Aborting | |
##(no log de erros existem mensagens dizendo que a porta 13001 já deve estar em uso) | |
## Inicializando a outra instancia mysql na porta 13002: | |
root@vmmysqlserver1:~# rm /tmp/mysqldata2/mysqld2.log | |
root@vmmysqlserver1:~# mysqld --no-defaults --user=mysql -P 13002 --datadir=/tmp/mysqldata2 \ | |
--log-error=mysqld2.log --pid-file=mysql2.pid --socket=mysqld2.sock & | |
[2] 27793 | |
sleep 8 | |
ps -ef | grep mysqld | |
mysql 27722 27627 1 00:26 pts/2 00:00:00 mysqld --no-defaults --user=mysql -P 13001 --datadir=/tmp/mysqldata1 --log-error=mysqld1.log --pid-file=mysql1.pid --socket=mysqld1.sock | |
mysql 27793 27627 3 00:26 pts/2 00:00:00 mysqld --no-defaults --user=mysql -P 13002 --datadir=/tmp/mysqldata2 --log-error=mysqld2.log --pid-file=mysql2.pid --socket=mysqld2.sock | |
root 27823 27627 0 00:26 pts/2 00:00:00 grep --color=auto mysqld | |
netstat -ap | grep mysqld | |
tcp6 0 0 [::]:13001 [::]:* LISTEN 27722/mysqld | |
tcp6 0 0 [::]:13002 [::]:* LISTEN 27793/mysqld | |
unix 2 [ ACC ] STREAM LISTENING 109802 27793/mysqld mysqld2.sock | |
unix 2 [ ACC ] STREAM LISTENING 109603 27722/mysqld mysqld1.sock | |
##(agora temos 2 processos mysqld rodando, mas em portas diferentes) | |
tail -3 /tmp/mysqldata2/mysqld2.log | |
2016-04-27T14:26:30.711486Z 0 [Note] Event Scheduler: Loaded 0 events | |
2016-04-27T14:26:30.711881Z 0 [Note] mysqld: ready for connections. | |
Version: '5.7.13-enterprise-commercial-advanced' socket: 'mysqld2.sock' port: 13002 MySQL Enterprise Server - Advanced Edition (Commercial) | |
cat /tmp/mysqldata2/mysqld2.log |grep ERROR | |
##(sem erros) | |
## Destruindo teste | |
mysqladmin -uroot -P13001 --protocol=tcp shutdown | |
mysqladmin -uroot -P13002 --protocol=tcp shutdown | |
sleep 8 | |
[1]- Done mysqld --no-defaults --user=mysql -P 13001 --datadir=/tmp/mysqldata1 --log-error=mysqld1.log --pid-file=mysql1.pid --socket=mysqld1.sock | |
[2]+ Done mysqld --no-defaults --user=mysql -P 13002 --datadir=/tmp/mysqldata2 --log-error=mysqld2.log --pid-file=mysql2.pid --socket=mysqld2.sock | |
rm -Rf /tmp/mysqldata* | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment