이 글에서는 주로 Shell에서 MySQL 데이터베이스에 대한 비밀번호 없는 빠른 로그인을 구현하는 방법을 샘플 코드를 통해 단계별로 자세히 소개합니다. 아래에서 함께 살펴보겠습니다.
Background
Shell에서 mysql-client를 통해 MySQL 데이터베이스에 로그인하려면 항상 비밀번호를 계속 입력해야 하는데, 이는 매우 번거로운 작업입니다.
게다가 루트 비밀번호가 매우 무작위인 경우(LastPass가 좋은 방법임) MySQL 데이터베이스에 한 번 로그인하는 데 드는 비용이 매우 높을 것입니다.
보통 우리는 데이터베이스에 로그인할 때 이렇게 로그인을 합니다
root@imlonghao:~# mysql -uroot -p Enter password:
그럼, 안전하면서도 간편하고 편리하게 데이터베이스에 로그인할 수 있는 방법이 있을까요?
Method
물론 답이 있으며, MySQL은 이미 이 문제에 대해 생각하는 데 도움을 주었습니다!
참조 링크: 비밀번호 보안에 대한 최종 사용자 지침
빠른 로그인을 위해 .my.cnf를 사용하세요
~/ 디렉터리에 새 .my.cnf 파일을 만듭니다. 물론, 이 파일이 이미 있다면 직접 수정하면 됩니다!
저는 개인적으로 vim 방법을 선호하므로 이렇게 할 수 있습니다
vim ~/.my.cnf
그런 다음 파일에 다음 정보를 작성하세요
[client] password=your_pass user=your_user
참고:your_pass 및 your_user를 원하는 사용자의 비밀번호와 사용자 이름으로 수정하세요.
에 로그인하려면 다음 예를 참조하세요.
[client] password=mysqlrootpassword123321 user=root
이미 .my.cnf 파일이 있는 경우 [클라이언트] 필드에 정보를 작성하세요!
참고: 비밀번호는 .my.cnf 파일에 일반 텍스트로 기록되므로 이 파일의 파일 권한 설정에 주의해야 합니다.
root@imlonghao:~# chmod 400 ~/.my.cnf
저장 후 mysql 명령을 직접 사용할 수 있습니다. MySQL 데이터베이스에 로그인하세요!
참고: 기본 ~/.my.cnf를 사용하는 대신 설정 파일을 지정해야 하는 경우 --defaults-file=file_name
매개변수를 사용해야 합니다. 예:
root@imlonghao:~# mysql --defaults-file=/home/imlonghao/mysql-opts
빠른 로그인을 위해 환경 변수 MYSQL_PWD 사용
MySQL은 먼저 환경 변수의 매개변수를 실행 매개변수로 사용합니다.
root@imlonghao:~# export MYSQL_PWD=your_pass
설정 후에는 로깅할 때 비밀번호를 다시 입력할 필요가 없습니다. 다시 mysql에 접속하세요.
그러나 현재 Shell을 종료하면 이 환경 변수는 사라집니다.
더 중요한 점은 Shell에 입력한 명령이 자동으로 저장되며, 입력한 명령을 히스토리에서 볼 수 있다는 점입니다.
요약
위 내용은 Shell_Mysql에서 비밀번호 없이 MySQL 데이터베이스에 빠르게 로그인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!