방금 Mac OS X에 MySQL을 설치했습니다. 다음 단계는 루트 사용자 암호를 설정하는 것이므로 다음에 수행했습니다.
- 터미널 앱을 실행하여 Unix 명령 행에 액세스하십시오.
-
유닉스 프롬프트에서 다음 명령을 실행했습니다.
$ cd /usr/local/mysql/bin $ ./mysqladmin -u root password 'password'
그러나 명령을 실행할 때
$ ./mysql -u root
, 이것이 답입니다.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 224
Server version: 5.5.13 MySQL Community Server (GPL)
Copyright (c) 2000, 2010, 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.
mysql>
mysql
암호없이 명령 행에 들어갈 수 있습니다 !
왜 이런거야?
답변
FLUSH PRIVILEGES
MySQL 터미널에 로그인 할 때 명령을 시도하십시오 . 그래도 작동하지 않으면 MySQL 터미널에있는 동안 다음 명령 세트를 사용해보십시오.
$ mysql -u root
mysql> USE mysql;
mysql> UPDATE user SET password=PASSWORD("NEWPASSWORD") WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
원하는 비밀번호로 NEWPASSWORD를 변경하십시오. 모두 설정해야합니다!
업데이트 : MySQL 5.7부터 password
필드 이름이 변경되었습니다 authentication_string
. 비밀번호를 변경할 때 다음 쿼리를 사용하여 비밀번호를 변경하십시오. 다른 모든 명령은 동일하게 유지됩니다.
mysql> UPDATE user SET authentication_string=PASSWORD("NEWPASSWORD") WHERE User='root';
업데이트 : 8.0.15 (이미 해당 버전 이전)에서 아래 설명에 언급 된대로 PASSWORD () 함수가 작동하지 않습니다. 다음을 사용해야합니다.
UPDATE mysql.user SET authentication_string='password' WHERE User='root';
답변
root로 설정 한 비밀번호를 기억하지 못하고 재설정해야하는 경우 다음 단계를 수행하십시오.
- mysqld 서버를 중지하십시오. 설치마다 다릅니다.
- 권한 우회를 사용하여 안전 모드에서 서버를 실행하십시오.
sudo mysqld_safe --skip-grant-tables;
- 새 창에서 데이터베이스에 연결하고 새 비밀번호를 설정하고 권한을 플러시하고 종료하십시오.
mysql -u root
MySQL 5.7보다 오래된 MySQL의 경우 다음을 사용하십시오.
UPDATE mysql.user SET Password=PASSWORD('your-password') WHERE User='root';
MySQL 5.7+의 경우 :
USE mysql;
UPDATE mysql.user SET authentication_string=PASSWORD("your-password") WHERE User='root';
새로 고침 및 종료 :
FLUSH PRIVILEGES;
\q
- 안전 모드 서버를 중지하고 일반 서버를 다시 시작하십시오. 새 비밀번호가 이제 작동합니다. 나를 위해 매력처럼 일했다 🙂
답변
MySQL을 설치 한 후에는 “루트”비밀번호를 설정해야합니다. 루트 비밀번호를 설정하지 않으면 루트 비밀번호가 없으므로 로그인 할 때 비밀번호가 필요하지 않습니다.
즉, 루트 암호를 설정해야합니다.
터미널을 사용하여 다음을 입력하십시오.
설치 : 루트 사용자 비밀번호를 설정하십시오.
/usr/local/mysql/bin/mysqladmin -u root password NEW_PASSWORD_HERE
실수를했거나 루트 암호를 변경해야하는 경우 다음을 사용하십시오.
루트 비밀번호 변경 :
cd /usr/local/mysql/bin/
./mysql -u root -p
> Enter password: [type old password invisibly]
use mysql;
update user set password=PASSWORD("NEW_PASSWORD_HERE") where User='root';
flush privileges;
quit
답변
mysql 웹 사이트에 제공된 지침은 위에서 언급 한 것보다 명확합니다.
$ sudo /usr/local/mysql/support-files/mysql.server stop
$ sudo /usr/local/mysql/support-files/mysql.server start --skip-grant-tables
/usr/local/mysql/bin/mysql
- mysql> 플래시 PRIVILEGES;
- mysql> ALTER USER ‘root’@ ‘localhost’ ‘MyNewPass’에 의해 식별 됨;
- mysql>
exit
또는 Ctrl + z $ sudo /usr/local/mysql/support-files/mysql.server stop
$ sudo /usr/local/mysql/support-files/mysql.server start
/usr/local/mysql/support-files/mysql -u root -p
- 새 비밀번호를 입력하십시오 (예 : MyNewPass)
참조 : http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
답변
-
mysqld 서버를 중지하십시오.
- 맥 OSX :
System Preferences
>MySQL
>Stop MySQL Server
- 리눅스 (터미널에서) :
sudo systemctl stop mysqld.service
- 맥 OSX :
-
권한 바이 패스로 안전 모드에서 서버 시작
- 터미널에서 :
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
- 터미널에서 :
-
A의 새 터미널 창 :
sudo /usr/local/mysql/bin/mysql -u root
-
그러면 mysql 명령 줄이 열립니다. 여기에서 입력하십시오 :
-
UPDATE mysql.user SET authentication_string=PASSWORD('NewPassword') WHERE User='root';
-
FLUSH PRIVILEGES;
-
quit
-
-
mysqld 서버를 다시 중지하고 정상 모드에서 다시 시작하십시오.
- Mac OSX (터미널에서) :
sudo /usr/local/mysql/support-files/mysql.server restart
- 리눅스 터미널 :
sudo systemctl restart mysqld
- Mac OSX (터미널에서) :
답변
새로운 Mysql 5.7의 경우 어떤 이유로 Mysql의 bin 명령이 쉘에 첨부되지 않았습니다.
-
설치 후 Mac을 재시동하십시오.
-
MySQL을 시작하십시오 :
시스템 환경 설정> MySQL> 시작 버튼
-
터미널에서 Mysql 설치 폴더로 이동하십시오.
$ cd /usr/local/mysql/bin/
-
MySQL에 액세스 :
$ ./mysql -u root -p
설치에 제공된 초기 비밀번호를 입력하십시오.
-
MySQL 터미널에서 비밀번호 변경 :
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPassword';
답변
터미널에서 mysql -u root -p
Return 키를 쓰고 칩니다. 적어 두어야 할 현재 mysql 비밀번호를 입력하십시오. 그리고 비밀번호를 설정하십시오
SET PASSWORD = PASSWORD('new_password');
이 문서를 참조하십시오 여기에 자세한 내용은.