--skip-grant-tables로 MySQL을 시작하는 방법
루트 사용자를 데이터베이스에서 차단했습니다.모든 권한을 루트 사용자에게 돌려줘야 합니다.비밀번호가 있고 MySQL에 로그인할 수 있습니다.그러나 루트 사용자에게 모든 권한이 있는 것은 아닙니다.
이 질문의 제목과 같은 문제가 있었습니다.다른 사람이 이 질문을 검색하여 Windows에서 MySql을 'skip-grant-tables' 모드로 시작하려고 하면 다음과 같습니다.
관리자 도구, 서비스를 통해 MySQL 서비스를 중지합니다.
my.ini 컨피규레이션파일을 변경합니다(디폴트 패스를 상정하고 있습니다).
C:\Program Files\MySQL\MySQL Server 5.5\my.ini
또는 MySQL 버전 > = 5.6의 경우
C:\ProgramData\MySQL\MySQL Server 5.6\my.ini
SERVER 섹션의 [mysqld] 아래에 다음 행을 추가합니다.
skip-grant-tables
할 수 있도록
# SERVER SECTION
# ----------------------------------------------------------------------
#
# The following options will be read by the MySQL Server. Make sure that
# you have installed the server correctly (see above) so it reads this
# file.
#
[mysqld]
skip-grant-tables
서비스를 다시 시작하면 암호 없이 데이터베이스에 로그인할 수 있습니다.
MySQL에서 루트 사용자를 다시 제어하는 방법.
위험: 위험한 조작
- 세션 ssh를 시작합니다(가능한 경우 루트 사용).
★★
my.cnf
를 사용하여 파일을 작성합니다.sudo vi /etc/my.cnf
mysqld 블록에 행을 추가합니다.*
skip-grant-tables
저장하고 종료합니다.
MySQL 서비스를 재시작합니다.
service mysql restart
서비스 상태를 확인합니다.
service mysql status
mysql에 접속합니다.
mysql
메인 데이터베이스 사용.
use mysql;
사용자 루트 비밀번호를 재정의합니다.
UPDATE user SET `authentication_string` = PASSWORD('myNuevoPassword') WHERE `User` = 'root';
my.cnf 파일을 편집합니다.
sudo vi /etc/my.cnf
선을 지웁니다.
skip-grant-tables
저장하고 종료합니다.
MySQL 서비스를 재시작합니다.
service mysqld restart
서비스 상태를 확인합니다.
service mysql status
데이터베이스에 접속합니다.
mysql -u root -p
메시지가 나타나면 새 암호를 입력합니다.
이 작업은 매우 위험하며, 모든 사용자가 사용자 및 비밀번호 없이 제한 없이 모든 데이터베이스에 연결할 수 있습니다.이것은 신중하게 사용해야 하며 위험을 피하기 위해 신속하게 되돌려야 합니다.
많은 것을 시도해 본 결과, 저는 이렇게 되었습니다.
sudo mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'newpassword';
그러면 우선 sudo를 사용하여 패스워드 없이 루트로 로그인 할 수 있습니다.그럼 루트의 비밀번호만 업데이트하면 돼
후, 저는 그, 는, 나, 기, 기, 기, aftermysqld
:
sudo service mysql restart
★★★★★★★★★★★★★★★★.newpassword
in ! in !
Linux 시스템에서는 다음 작업을 수행할 수 있습니다(다른 OS에서도 비슷해야 합니다).
mysql 프로세스가 실행 중인지 확인합니다.
sudo service mysql status
실행 중인 경우 프로세스를 중지합니다(모든 mysql 도구를 닫으십시오).
sudo service mysql stop
정지하는 데 문제가 있는 경우 다음을 수행합니다.
:ps aux | grep mysqld
종료합니다.kill -9 process_id
이제 skip grant를 사용하여 안전 모드에서 mysql을 시작합니다.
sudo mysqld_safe --skip-grant-tables &
WAMP64는 10개의 WAMP64입니다.★★★★★★를 했다.my.cnf
★★★★★★★★★★★★★★★★★」my.ini
.를 다my.ini
C:\wamp64\bin\mariadb\mariadb10.2.14
.
동료의 지시에 따릅니다.
- Wampserver에서 빠른 시작 메뉴를 열고 '모든 서비스 중지'를 선택.
- ★★
my.ini
에디터에서 된 " " "[mysqld]
- 이 추가되었습니다.
'skip-grant-tables'
[mysqld]
내) 섹션(예: ", ") - 파일을 저장하고 편집기를 열어 둡니다.
- Wampserver "Restart Services" (재시작 서비스).
skip-grant-tables
표시 - Wampserver 메뉴에서 MySQL을 선택하여 프롬프트를 엽니다.
- 비밀번호 입력이 요구되었습니다.입력만 눌러주세요.
- 를 .
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'newpassword';
- 작업이 성공했음을 보고해야 합니다(해당 테이블은 없습니다).
- 서서
my.ini
"" " " "'skip-grant-tables'
,, " " " - [ WampServer ]메뉴에서 [Restart Service]를 한 번 더 선택합니다.
이제 새 비밀번호를 사용하여 입력할 수 있습니다.여기 있는 모든 답변들 덕분입니다.
5하여 mysql 5.6에 C:\Program Files\MySQL\MySQL Server 5.6\my.ini
:
은 에접으로 .C:\ProgramData\MySQL\MySQL Server 5.6\my.ini
.
해서 더 돼요.skip-grant-tables
이치노
# SERVER SECTION
# ----------------------------------------------------------------------
#
# The following options will be read by the MySQL Server. Make sure that
# you have installed the server correctly (see above) so it reads this
# file.
#
# server_type=3
[mysqld]
skip-grant-tables
주의: 에서 작업을 완료한 후에는 파일을 복원해야 합니다.
에 주의를 사용합니다.mysqld --skip-grant-tables
에서 경우Apple MacBook OSX
'어,어,어,어,어,어,어,어,어,어,어,어,어,어,어,어,어.
- MySQL 서버를 중지합니다(이미 실행 중인 경우).
- 파일 MySQL 을 찾습니다.
my.cnf
로 되어 있습니다./Applications/XAMPP/xamppfiles/etc
수 경우 만 하면 찾을 수 없는 경우 검색만 하면 됩니다.) - .
my.cnf
모든 텍스트 편집기에 파일을 저장합니다. "skip-grant-tables"
따옴표 의[mysqld]
파일을 저장합니다.- 이제 MySQL 서버를 시작합니다.이제 MySQL 서버를 시작합니다.부 로 작 with it' start?
skip-grant-tables
선택.선택.
지금 하고 싶은 대로 해!!
PS: Please remove PS: 삭제해 주세요.skip-grant-tables
부에서my.cnf
파일에는 다른 모든 작업을 수행할 수 있는 파일에는 액세스할 수 없는 파일을 항상 액세스할 수 있습니다.모든 작업을 완료하면 액세스 권한 없이 항상 ELASELASE MySQL 서버는 항상 실행됩니다.
명령 프롬프트에서 mysql 데이터베이스를 시작하는 동안 사용자 테이블 확인을 건너뛰려면 콘솔에서 다음 명령을 실행하십시오.
mysqld -skip-grant-tables
my.ini 파일을 편집하고 skip-grant-tables를 추가한 후 mysql 서버를 재시작합니다.
[mysqld]
port= 3306
socket = "C:/xampp/mysql/mysql.sock"
basedir = "C:/xampp/mysql"
tmpdir = "C:/xampp/tmp"
datadir = "C:/xampp/mysql/data"
pid_file = "mysql.pid"
# enable-named-pipe
key_buffer = 16M
max_allowed_packet = 1M
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
log_error = "mysql_error.log"
skip-grant-tables
# Change here for bind listening
# bind-address="127.0.0.1"
# bind-address = ::1
이것이 윈도 박스일 경우 가장 간단한 방법은 서버를 정지하고 mysql Configuration파일에 skip-module-module을 추가한 후 서버를 재시작하는 것입니다.
권한 문제를 해결한 후 위의 내용을 반복하되 skip-skip-skip-skip-skip 옵션을 제거합니다.
send에 하여 "mysql send"를 전송합니다.SHOW VARIABLES LIKE '%config%'
반환되는 행 중 하나가 컨피규레이션파일의 위치를 나타냅니다.
Ubuntu 20.4에서는 이렇게 합니다.이건 나한테 효과가 있었어.
에 가다/etc/mysql/mysql.conf.d/
단말기에 쓸 수 있습니다.
cd /etc/mysql/mysql.conf.d/
,
그런 다음 이름이 지정된 파일을 편집해야 합니다.mysqld.cnf
.
제 PC에서는 그 파일이 읽기 전용 파일이었기 때문에 먼저 권한을 변경해야 했습니다.
나는 썼다sudo chmod +rw mysqld.cnf
터미널에 있습니다.
그 후, 나는 타이핑으로 파일을 편집했다.sudo gedit mysqld.cnf
터미널에 있습니다.
이 파일에서는 [mysqld]아래에 [mysqld]가 새 줄에 skip-grant-tables를 추가하는 것을 볼 수 있습니다.이렇게 됩니다.
[mysqld]
skip-grant-tables
mysql 서비스를 다시 시작합니다.sudo service mysql restart
단말기로.
서버가 실행되고 있지 않은 경우는, 기입해 주세요.sudo service mysql start
단말기로.
여기서 또 하나 언급할 가치가 있는 것은
나는 또한 거의 똑같은 방법으로 고친 또 다른 문제가 있었다.
서버가 포트 3306에서 수신을 하지 않았습니다.
그래서 포트 = 3306도 추가해야 했습니다.mysqld.cnf
파일.
이제 나는
[mysqld]
skip-grant-tables
port = 3306
mysqld.cnf 파일로 이동합니다.
질문이 오래된 것 같습니다만, 제 설정이 도움이 될 수도 있습니다.스크립트에서 사용하는 설정은 다음과 같습니다.
sed -i 's/^#skip-grant-tables.*/skip-grant-tables/g' /etc/my.cnf
service mysql restart
mysql -e "UPDATE mysql.user SET authentication_string='' WHERE user='root';"
sed -i 's/^skip-grant-tables.*/#skip-grant-tables/g' /etc/my.cnf
service mysql 재시작
언급URL : https://stackoverflow.com/questions/1708409/how-to-start-mysql-with-skip-grant-tables
'programing' 카테고리의 다른 글
JavaScript 루프에 지연을 추가하려면 어떻게 해야 하나요? (0) | 2022.12.29 |
---|---|
데이터가 현재 값보다 낮은 값을 갖는 데이터 선택 (0) | 2022.12.29 |
Maria를 사용한 워터라인/Sails.js 대량 삽입 및 삭제DB (0) | 2022.12.29 |
MySQL match() again() - 관련성과 컬럼에 따른 순서? (0) | 2022.12.29 |
Java 범용 클래스를 작성할 때 꺽쇠 괄호로 둘러싸인 칠드는 무엇을 의미합니까? (0) | 2022.12.29 |