XAMPP-예기치 않게 MySQL 종료
XAMPP를 열고 MySQL 시작 버튼을 클릭하면 오류가 발생합니다. 바로 전에 시작했지만 지금은 작동하지 않습니다.
12:19:12 PM [mysql] MySQL 앱 시작 시도 중 ...
12:19:12 PM [mysql] 상태 변경 감지 됨 : 실행 중
12:19:13 PM [mysql] 상태 변경 감지 됨 : 중지됨
12:19:13 PM [mysql] 오류 : MySQL이 예기치 않게 종료되었습니다.
오후 12:19:13 [mysql] 포트 차단, 종속성 누락,
오후 12:19:13 [mysql] 부적절한 권한, 충돌 또는 다른 방법으로
인한 종료로 인한 것일 수 있습니다. 오후 12:19:13 [mysql ] 로그 버튼을 눌러 오류 로그를보고
12:19:13 PM [mysql]을 확인 하여 더 많은 단서를 확인하십시오. 12:19:13 PM [mysql]
도움이 더 필요하면 다음
12:19를 복사하여 게시하십시오 . 오후 13시 [mysql] 포럼의 전체 로그 창
다음은 오류 로그의 내용입니다.
2013-08-02 12:19:12 4536 [참고] 'FEDERATED'플러그인이 비활성화되었습니다.
2013-08-02 12:19:12 f64 InnoDB : 경고 : innodb_additional_mem_pool_size 사용은 DEPRECATED입니다. 이 옵션은 innodb_use_sys_malloc 옵션 및 InnoDB의 내부 메모리 할당 자와 함께 향후 릴리스에서 제거 될 수 있습니다.
2013-08-02 12:19:12 4536 [참고] InnoDB : InnoDB 메모리 힙이 비활성화 됨
2013-08-02 12:19:12 4536 [참고] InnoDB : 뮤텍스 및 rw_lock은 Windows 연동 기능을 사용합니다.
2013-08-02 12:19:12 4536 [참고] InnoDB : 압축 테이블은 zlib 1.2.3을 사용합니다.
2013-08-02 12:19:12 4536 [참고] InnoDB : CPU crc32 명령어를 사용하지 않음
2013-08-02 12:19:12 4536 [참고] InnoDB : 초기화 버퍼 풀, 크기 = 16.0M
2013-08-02 12:19:12 4536 [참고] InnoDB : 버퍼 풀 초기화 완료
2013-08-02 12:19:12 4536 [참고] InnoDB : 지원되는 가장 높은 파일 형식은 Barracuda입니다.
2013-08-02 12:19:12 4536 [참고] InnoDB : ibdata 파일의 로그 시퀀스 번호 0과 0이 ib_logfiles의 로그 시퀀스 번호 1616798과 일치하지 않습니다!
2013-08-02 12:19:12 4536 [참고] InnoDB : 데이터베이스가 정상적으로 종료되지 않았습니다!
2013-08-02 12:19:12 4536 [참고] InnoDB : 크래시 복구를 시작합니다.
2013-08-02 12:19:12 4536 [참고] InnoDB : .ibd 파일에서 테이블 스페이스 정보 읽기 ...
가장 중요한 오류 메시지는 다음과 같습니다.
2013-08-02 12:19:12 4536 [오류] InnoDB :
이전에 열린 테이블 스페이스를 열려고했습니다.
이전 테이블 스페이스 mysql / innodb_table_stats 는 파일 경로 : . \ mysql \ innodb_table_stats.ibd 에서 공간 ID : 1을 사용합니다 . 파일 경로 : . \ xat \ payments.ibd 에서 공간 ID : 1을 사용하는
테이블 스페이스 xat / payments 를 열 수 없습니다 .
나머지 로그 :
InnoDB : 오류 : 단일 테이블 테이블 스페이스 파일을 열 수 없습니다. \ xat \ payments.ibd
InnoDB : 테이블이
InnoDB 가 될 수 있으므로 크래시 복구를 계속하지 않습니다 . InnoDB 로그의 로그 레코드를 여기에 적용 할 수 없으면 손상됨 .
InnoDB : 문제를 해결하고 mysqld를 시작하려면 :
InnoDB : 1) 파일에 권한 문제가 있고 mysqld가
InnoDB를 사용할 수없는 경우 : 파일을 열려면 권한을 수정해야합니다.
InnoDB : 2) 테이블이 필요하지 않거나 백업에서 복원 할 수있는 경우
InnoDB : 그러면 .ibd 파일을 제거 할 수 있으며 InnoDB는 정상적인
InnoDB : 크래시 복구를 수행하고 해당 테이블을 무시합니다.
InnoDB : 3) 파일 시스템 또는 디스크가 손상되어 제거 할 수없는 경우
InnoDB : .ibd 파일, my.cnf
InnoDB : 에서 innodb_force_recovery> 0을 설정 하고 InnoDB가 여기서 충돌 복구를 계속하도록 강제 할 수 있습니다.
이러한 오류의 원인은 무엇이며 어떻게 수정할 수 있습니까?
이봐, 방금이 일을했고 효과가 있었다 :
- Xampp 서버 종료
C:\xampp\mysql\data
디렉토리 로 이동- 삭제
ibdata1
파일을 - xampp 서버 다시 시작
작동합니다
- mysql / data /로 이동합니다.
- 모든 임의 파일 삭제 (실제 데이터베이스 폴더 제외)
- Apache 와 MySQL을 다시 시작합니다 .
그것을 고쳐야합니다.
내 Xampp MySQL은 다음과 같이 작동했습니다.
01.Go to mysql/data/ directory
02. delete the ibdata1 & ib_logfile*(ib_logfile0,ib_logfile1,ib_logfile101) file
03. restart xampp server
[mysqld]
mysql 구성 파일 (my.ini) 의 섹션 아래에 다음 줄을 추가하고 나중에 Apache 웹 서버와 mysql 서비스를 다시 시작합니다.
[mysqld]
innodb_force_recovery = 4
C:\xampp\mysql\data\mysql_error.log
mysql을 시작하려고 할 때 동일한 종류의 오류가 발생했습니다 .
2013-08-05 01:20:32 6780 [ERROR] InnoDB: Attempted to open a previously
opened tablespace. Previous tablespace mysql/slave_relay_log_info uses
space ID: 3 at filepath: .\mysql\slave_relay_log_info.ibd. Cannot open
tablespace test_database/test_table which uses space ID: 3 at filepath:
.\test_database\test_table.ibd
오류를 자세히 읽어야합니다. 이것은 test_database
mysql이 시작되는 것을 막고 있음을 나타냅니다.
문제가되는 데이터베이스를 날려 버릴 수 있으며 다음 단계를 통해 문제를 해결할 수 있습니다.
- mysql과 xampp가 완전히 종료되었는지 확인하십시오.
- mysql이 설치된 디렉토리로 이동하십시오.
C:\xampp\mysql\data
- 생성 한 데이터베이스 이름이있는 폴더가 표시되어야합니다. 내 것이
test_database
. - 다른 곳에 새 폴더를 만듭니다.
C:\xampp\mysql\data\mysql\backuptablespace
- 문제가되는 데이터베이스 테이블 폴더를 백업 디렉터리로 끌어다 놓습니다 (삭제하지 마십시오).
- mysql을 다시 시작하십시오. 저에게는 예상대로 1 초 만에 시작되었습니다.
작동하지 않는 경우 파일을 시작한 위치로 되 돌리면 시작한 위치로 돌아갑니다.
데이터베이스를 삭제하지 않고 백업이없는 경우 :
테이블 데이터의 백업이없고 무언가가 손상되어 mysql이 시작되지 않는 경우 제거 프로세스를 사용하여 정확히 무엇을 손상 시켰는지 추측하고 확인해야합니다. 이 단계를 따르세요:
- 전체의 복제본을
C:\xampp\
만들어서 시작한 곳으로 돌아갈 수 있도록 안전한 곳에 보관하십시오. - mysql 데이터베이스에서 손상된 항목을 찾으려면 "이진 검색"방식을 사용하십시오. 파일, 테이블, 데이터베이스, 사용자 등이 될 수 있습니다.
- 전체 데이터베이스를 삭제하고 mysql을 시작할 수 있는지 확인하십시오. 그렇다면 데이터베이스를 다시 넣고 일부 테이블을 제거하십시오. 그렇지 않은 경우 시작될 때까지 다른 것을 잡아보십시오.
다음에서 다음 파일을 제거하십시오
C:\xampp\mysql\data\mysql
. db.frm db.MRD db.MYI db.opt user.frm user.MYD user.MYImysql이 시작될 때 시작을 방해하는 추가 한 항목을 찾을 때까지 항목을 다시 넣으십시오. 이것에 대한 한 가지 보너스는 mysql이 어떻게 작동하는지 배우는 것입니다.
핵 옵션 :
당신이 한 일이 mysql 서버를 망쳤습니다. XAMPP를 제거하고 다시 설치하면 손상이 취소됩니다.
관리자로 XAMPP를 실행 하지 않을 때 MySQL을 종료하면 자주 손상되어 테이블을 복구하거나 삭제해야합니다. 이를 방지하려면 관리자 권한으로 XAMPP를 실행하거나 MySQL을 종료하기위한 적절한 명령 프롬프트 방법을 사용해야합니다.
ibdata1
Kratos가 제안한대로 삭제할 수 있지만 데이터베이스의 다른 부분이 여전히 /mysql/data/
폴더 에 있기 때문에 데이터베이스가 손상 될 수 있습니다 . 제 경우에는이 잔여 데이터로 인해 WordPress 설치가 중단되었습니다.
손상을 취소하는 더 깨끗한 방법은 전체 /mysql/data/
폴더 를 되 돌리는 것 입니다. Windows에는 기본 제공 폴더 버전 관리가 있습니다.를 마우스 오른쪽 버튼으로 클릭하고을 /mysql/data/
선택 Restore previous versions
합니다. 그런 다음 폴더의 현재 내용을 삭제하고 이전 버전의 내용으로 바꿀 수 있습니다.
부록 : 관리자 권한으로 XAMPP를 실행하는 것을 잊지 않으려면 XAMPP 바로 가기를 마우스 오른쪽 단추로 클릭하고,로 이동 Properties
한 다음 Advanced
마지막으로를 선택 Run as administrator
합니다.
I also faced this issue and this is how I solved.
1. Make sure xampp is not under sub-directory. For example, it should be C:\xampp
2. You might need to run as administrator in running the application.
Hope this will work!
i was facing the same issue and none of the solutions stated above helped me. i went to the mysql configuration file (my.ini) and changed the port number under [mysqld].By default mysql runs on 3306 port.
port= 3306
i changed it to ,
port= 8111
Then run as Administrator.Finally this worked for me.
Here is what I did. I restarted my computer. Next I run services.msc. I stopped the MySQL service then restarted it. The restarted the Xampp server.
Guys just make sure you dont have MySql Server installed. Because I have MySql server pre-installed and when I start mysql from xampp control panel some port conflicts are happening and its not working.. SO before starting the mysql from xampp control panel make sure mysql server is not installed. I use .net so I have installed mysql server in the Past. Uninstalling it solved my Problem....
Config->Apache->Open httpd.conf. search for Listen or 80,update listen port to 8081 save and restart server. Oh and shutdown Skype if you have it.
In my case in which I synced my mysql data and htdocs to dropbox, I just needed to delete the conflicted files in mysql/data folder and subfolders. The conflicted files can be identified by its names, dropbox will tell you that. It has solved the problem for me.
Make sure the system time is correct. Mine was set to the year 2040 somehow, correcting the date solved the problem.
For me I quit Skype, which was occupying port 80, then Apache ran happily on port 80, than I ran Skype and it picked another port this time.
if you are using MariaDB you can try this:
- Go to mysql/data/
- Rename aria_log_control to aria_log_control_old
- Restart "Mysql"
i comment this statement in mysql/bin/my.ini
'innodb_additional_mem_pool_size=2M'
and it solve my problem. than you everyOne
For this, you need to click on the x option under Modules Services and make MYSQL services installed. Then start the services. Here you go.
No solution above worked for me. then I did below:
I deleted all the files inside C:\xampp\mysql\data\ directory except folders in this directory. It worked perfectly fine but my previous databases are not working now. So do above if you don't care it will delete all your previous databases in phpmyadmin.
If the crash message is "mysql.exe has stopped working". Just run xampp-control.exe as administrator will solve your problem instantly.
If any of the things above do not work, make a back of Xampp directory and reinstall Xampp. That surely works!
This means that you already have a MySQL database running at port 3306.
In the XAMPP control panel, press the 'Config' button and after that press 'my.ini'. After this, Ctrl-F and search for '3306'. Replace any '3306' that you find with a different port number of your choice (you could choose 3307 or 3308 - I chose 2811 and it worked).
After you have replaced every location where '3306' is written, save the file and press 'Start' on the control panel again.
Rename below files from mysql/data ib_logfile0 ib_logfile1 ibdata1
my.cnf innodb_buffer_pool_size to 200M as per your ram innodb_log_buffer_size to 32M
Restart your apache server
hope it helps you
I solved! deactivate UAC with msconfig before to install xampp
That's the more precise answer and worked for me!!!! ! A cleaner way of undoing the damage is to revert your whole /mysql/data/ folder. Windows has built-in folder versioning — right click on /mysql/data/ and select Restore previous versions. You can then delete the current contents of the folder and replace it with the older version's contents. as mentioned above by Ryan Williams.
Go to task manager And search mysqld and right click and select END TASK and refresh XAMPP
참고URL : https://stackoverflow.com/questions/18022809/xampp-mysql-shutdown-unexpectedly
'development' 카테고리의 다른 글
객체 배열을 Swift의 Dictionary에 매핑 (0) | 2020.12.13 |
---|---|
바이트 배열의 데이터를 문자로 인쇄하는 방법 (0) | 2020.12.13 |
iOS에서 애니메이션으로 탭 막대를 숨기는 방법은 무엇입니까? (0) | 2020.12.13 |
UI를 차단하지 않고 배열을 반복하는 가장 좋은 방법 (0) | 2020.12.12 |
교차 도메인 POST 요청이 쿠키 Ajax Jquery를 보내지 않습니다. (0) | 2020.12.12 |