문제:
(학습 영상 공유: 프로그래밍 영상)
1045-Access denied for user 'root'@'localhost'(using password: YES)
원인 분석:
주로 사용자가 잘못된 사용자 이름이나 비밀번호를 입력하여 액세스가 거부되었기 때문입니다. 반환 비밀번호를 찾거나 비밀번호를 재설정해야 합니다.
해결 방법은 Windows 플랫폼의 단계는 다음과 같습니다.
방법 1:
1. MySQL 서버가 다음과 같은 경우. 달리고 있어, 그만둬.
서버가 Windows 서비스로 실행 중인 경우 서비스 관리자로 들어갑니다. 시작 메뉴->제어판->관리 도구->서버가 서비스로 실행되고 있지 않으면 작업 관리자가 강제로 중지합니다.
3. 텍스트 파일을 만들고 다음 명령을 한 줄에 입력하세요.
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
파일을 원하는 이름으로 저장하세요. 이 예에서 파일은 C:mysql-init.txt입니다.
4. DOS 명령 프롬프트를 입력합니다. 시작 메뉴->실행->cmd
MySQL을 C:mysql에 설치했다고 가정합니다. MySQL을 다른 위치에 설치한 경우 그에 맞게 다음 명령을 조정하십시오.
DOS 명령 프롬프트에서 다음 명령을 실행합니다:
C:\> C:\mysql\bin\mysqld-nt --init-file=C:\mysql-init.txt
서버가 시작되면 "--init-file" 옵션을 실행하고 시작 시 지정된 파일에서 SQL 명령으로 명명된 파일의 내용을 읽은 다음 루트 사용자 비밀번호를 변경하십시오. 서버가 성공적으로 시작되면 C:mysql-init.txt를 삭제해야 합니다.
5. MySQL 서버를 중지한 다음 일반 모드에서 다시 시작하세요.
서버를 서비스로 실행하는 경우에는 Windows 서비스 창에서 시작해야 하며, 서버를 수동으로 시작하는 경우에는 정상적으로 명령을 사용할 수 있습니다.
방법 2:
# /etc/init.d/mysql stop # mysqld_safe --user=mysql --skip-grant-tables --skip-networking & # mysql -u root mysql mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; mysql> FLUSH PRIVILEGES; mysql> quit # /etc/init.d/mysql restart # mysql -uroot -p Enter password: <输入新设的密码newpassword> mysql>
방법 3:
/etc/mysql/debian.cnf 파일의 [client] 섹션에 제공된 사용자 이름과 비밀번호를 직접 사용:
# mysql -udebian-sys-maint -p Enter password: <输入[client]节的密码> mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; mysql> FLUSH PRIVILEGES; mysql> quit # mysql -uroot -p Enter password: <输入新设的密码newpassword> mysql>
방법 4:
1. 시스템에 접속하여 mysql 서비스를 중지하거나 mysqld-nt 프로세스를 종료합니다
2. 명령줄을 입력하고 mysql 설치 디렉터리로 이동합니다. 설치 디렉터리가 d:mysql, CMD라고 가정하여 명령줄을 입력합니다
3 . d:mysqlbinmysqld-nt --skip- grant-tables를 실행하여 mysql을 시작하고 권한 확인을 끕니다
4. d:mysqlbinmysqladmin -u root 플러시-privileges 비밀번호 "newpassword"를 실행하여 루트 비밀번호를 재설정하세요
5. mysql 서비스
관련 추천:
navicat위 내용은 navicat에서 1045 오류를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!