본문 바로가기

리눅스

MySQL DB 접속 테스트

반응형

MySQL DB 접속 테스트

dbconnectionTest.sh 스크립트 생성

vim dbconnectionTest.sh
#!/bin/bash

dbHost=192.168.20.145
dbPort=3306
dbUser=root
dbPassword=P@ssw0rd1!
dbDatabase=test

while true;
do
	mysql -s -N --host=${dbHost} --user=${dbUser} --password=${dbPassword} --port=${dbPort} --database=${dbDatabase} -e "select now();"
	sleep 1;
done
chmod +x dbconnectionTest.sh
bash dbconnectionTest.sh
$ bash dbconnectionTest.sh
mysql: [Warning] Using a password on the command line interface can be insecure.
2021-09-23 17:36:08
mysql: [Warning] Using a password on the command line interface can be insecure.
2021-09-23 17:36:09
mysql: [Warning] Using a password on the command line interface can be insecure.
2021-09-23 17:36:10
mysql: [Warning] Using a password on the command line interface can be insecure.
2021-09-23 17:36:11
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql: [Warning] Using a password on the command line interface can be insecure.

접속 테스트에는 문제가 없지만 경고 문구가 계속 출력되어 보기 싫다.

728x90

MySQL 구성 유틸리티(mysql_config_editor)

mysql_config_editor set --login-path=tdb --host=192.168.20.145 --port=3306 --user=root --password
  • --login-path=mydb: 저장할 연결 정보의 이름을 mydb로 지정합니다.
  • --host=localhost: MySQL 호스트 이름을 지정합니다.
  • --user=myuser: MySQL 사용자 이름을 지정합니다.
  • --password: 이 옵션을 사용하면 암호를 입력하라는 프롬프트가 표시됩니다.

암호를 입력하고 저장하면 mylogin.cnf 파일에 연결 정보가 암호화되어 저장됩니다.

$ mysql_config_editor set --login-path=tdb --host=192.168.20.145 --port=3306 --user=root --password
Enter password:
mysql_config_editor print --all
$ mysql_config_editor print --all
[tdb]
user = root
password = *****
host = 192.168.20.145
port = 3306

dbconnectionTest.sh 스크립트 업데이트

vim dbconnectTest.sh
#!/bin/bash

dbDatabase=test

while true;
do
  mysql --login-path=tdb ${dbDatabase} -e "select now() \G;"
  sleep 1;
done
bash dbconnectTest.sh
$ bash dbconnectTest.sh
*************************** 1. row ***************************
now(): 2021-09-23 17:54:50
*************************** 1. row ***************************
now(): 2021-09-23 17:54:51
*************************** 1. row ***************************
now(): 2021-09-23 17:54:52
*************************** 1. row ***************************
now(): 2021-09-23 17:54:53
*************************** 1. row ***************************
now(): 2021-09-23 17:54:54

경고 문구 없이 시간만 출력됩니다.

 

728x90
반응형