>  기사  >  데이터 베이스  >  MySQL의 일반적인 오류 분석 및 솔루션 요약

MySQL의 일반적인 오류 분석 및 솔루션 요약

coldplay.xixi
coldplay.xixi앞으로
2021-01-20 10:12:232976검색

MySQL의 일반적인 오류 분석 및 솔루션 요약

관련 무료 학습 권장 사항: mysql 비디오 튜토리얼

1. 'localhost'(10061)에서 MySQL 서버에 연결할 수 없습니다.
번역: 에서 mysql에 연결할 수 없습니다. localhost
분석: "localhost" 컴퓨터가 존재하지만 이 컴퓨터에서는 MySQL 서비스가 제공되지 않음을 보여줍니다.
이 머신에서 MySQL 서비스를 시작해야 합니다. 이 오류는 머신 로드가 너무 높고 해당 요청을 수행할 시간이 없는 경우에도 발생합니다.
해결 방법: 아직 시작되지 않았으므로 이 머신에서 mysql을 시작하세요. 시작에 실패하는 경우는 대부분 my.ini 구성에 문제가 있기 때문입니다. 다시 구성하면 됩니다.
mysql 로드가 비정상적이라고 생각되면 mysql/bin 디렉터리로 이동하여 mysqladmin -uroot -p123 processlist를 실행하여 현재 mysql 프로세스를 확인할 수 있습니다.

2. 알 수 없는 MySQL 서버 호스트 'localhosadst' (11001)
번역: 알 수 없는 MySQL 서버 localhosadst
분석: 서버 localhosadst가 존재하지 않습니다. 또는 전혀 연결할 수 없습니다.
해결 방법: 포럼에서 ./config.inc.php를 주의 깊게 확인하여 $dbhost를 찾아 올바른 mysql 서버 주소로 재설정하세요.

3. 사용자: 'roota@localhost'에 대한 액세스 거부됨(사용 비밀번호: YES)
번역: 사용자 roota의 localhost 액세스가 거부되었습니다(통과할 수 없음)
분석: 이 오류는 일반 데이터베이스 사용자에 의해 발생합니다. mysql 서버와 관련된 이름과 비밀번호가 잘못되었습니다.
해결 방법: 포럼에서 ./config.inc.php를 주의 깊게 확인하고 $dbuser 및 $dbpw를 찾아 확인하고 재설정한 후 저장하세요.

4. 'newbbs' 데이터베이스에 대한 'red@localhost' 사용자의 액세스가 거부되었습니다
번역: 사용자 red는 localhost 서버에서 newbbs 데이터베이스를 작동할 권한이 없습니다. 분석: 이 프롬프트는 질문 3과 다릅니다. 그 것은 데이터베이스에 연결할 때 차단되었으며, 이 오류는 데이터베이스에서 작업할 때 발생했습니다. 예를 들어 업데이트 등을 선택합니다. 이는 사용자에게 데이터베이스를 운영할 수 있는 해당 권한이 없기 때문입니다. 예를 들어 mysql.user.Select_priv에 select 작업이 기록되어 있으며 Y는 작업이 가능하고 N은 작업이 불가능합니다.
해결 방법: 자체 독립 호스트인 경우 mysql.user의 해당 사용자 레코드를 업데이트하세요. 예를 들어 여기서 업데이트할 사용자는 빨간색입니다. 또는 ./config.inc.php를 직접 수정하여 데이터베이스 운영 권한을 가진 사용자를 구성하세요
또는 다음 명령을 통해 인증을 업데이트하세요. dbname.*에 대한 모든 권한을 'password'로 식별되는 'user'@'localhost'에게 부여하세요
팁: mysql 라이브러리의 레코드를 업데이트한 후 업데이트를 적용하려면 mysql 서버를 다시 시작해야 합니다.
FLUSH PRIVILEGES; config.inc.php의 $dbname 설정이 잘못되었습니다. 결과적으로 데이터베이스가 전혀 존재하지 않으므로 $db->select_db($dbname); 가 false를 반환합니다
위의 질문 4와 동일합니다. 데이터베이스 사용자에게 선택 권한이 없습니다. 그런 오류. config.inc.php 설정에 문제가 없음에도 불구하고 이 오류가 계속 나타나는 경우 이는 해당되는 경우입니다.

해결책: 올바른 약을 처방하세요

config.inc.php를 열고 $dbname을 찾아 재구성을 확인한 후 저장하세요 문제 4

6에 대한 해결책과 동일합니다. 'xxx_forums.MYI' 파일을 열 수 없습니다. (errno: 145)

번역: xxx_forums.MYI를 열 수 없습니다
문제 분석:
이 상황은 cdb_forums.MYI를 열 수 없기 때문에 발생합니다.
1. 서버가 비정상적으로 종료되었습니다. 데이터베이스 공간이 가득 찼거나 다른 이유 알 수 없는 이유로 데이터베이스 테이블이 손상되었습니다.

2. Unix 계열 운영 체제에서 데이터베이스 파일을 직접 복사 및 이동하면 파일의 그룹 소유권으로 인해 이 오류가 발생합니다.

해결 방법: 1. 데이터 테이블 복구 다음 두 가지 방법을 사용하여 데이터 테이블을 복구할 수 있습니다. (첫 번째 방법은 독립 호스트 사용자에게만 적합합니다.)
1) myisamchk를 사용하면 MySQL에는 특수 사용자 데이터 테이블 검사 기능이 제공됩니다. 및 수리 도구 - myisamchk. 현재 디렉터리를 MySQL/bin으로 변경합니다. 일반적으로 myisamchk 명령은 이 디렉터리에서만 실행할 수 있습니다. 일반적으로 사용되는 복구 명령은 다음과 같습니다: myisamchk -r 데이터 파일 디렉터리/데이터 테이블 이름.MYI
2) phpMyAdmin을 통해 복구합니다. phpMyAdmin에는 특정 테이블을 입력한 후 하단의 "작업"을 클릭합니다. "테이블 유지 관리"의 "테이블 수리"를 참조하세요.
참고: 위의 두 가지 복구 방법을 실행하기 전에 데이터베이스를 반드시 백업하세요.
2. 파일 그룹 수정(독립 호스트 사용자에게만 적합)
1) 데이터베이스 파일을 복사하는 과정에서 MySQL을 실행하는 계정에서 데이터베이스 파일을 읽고 쓸 수 있도록 설정되지 않았습니다(일반적으로 Linux에 적용됨). 및 FreeBSD 사용자).

7. 'test.xxx_sessions' 테이블이 존재하지 않습니다
번역: xxxxx 테이블이 존재하지 않습니다.
분석: SELECT * FROM xxx_members WHERE uid='XX'와 같은 sql 문을 실행할 때 테이블을 찾을 수 없습니다. $dbname 라이브러리에 xxx_members 테이블이 없으면 이 오류가 표시됩니다. 구체적인 상황은 다음 세 가지 상황으로 논할 수 있다.
플러그인 설치나 핵 설치 시 프로그램 파일이 수정됐으나 이에 맞춰 데이터베이스가 업그레이드되는 것을 잊어버렸다.
백그라운드에서 불완전한 백업이 사용되며, 데이터를 가져올 때 해당 버전이 설치된 포럼의 데이터베이스로 가져오지 않습니다.
해결책: 문제를 치료하는 데 동일한 솔루션이 사용되지만, 원인에 따라 다른 치료 방법이 사용됩니다.
플러그인 작성자가 제공한 설치 지침을 주의 깊게 확인하고 누락된 데이터베이스 작업을 채우십시오. 문제가 여전히 해결되지 않으면 플러그인의 가용성을 의심해야 합니다. 플러그인 작성자에게 문의하거나 제거하세요.
가식하지 말고 발만큼 큰 신발을 신으세요. 즉, 프로그램 파일과 데이터베이스가 일치할 수 있습니다.

8. '필드 목록'에 알 수 없는 컬럼 'column_name'
번역: 알 수 없는 필드 이름인 컬럼_이름
분석: sql 문을 실행할 때, 그렇지 않은 필드가 있습니다. 지정된 테이블 이름이 나타나면 이 오류가 발생합니다. 구체적인 이유는 플러그인 설치나 핵 설치 시 프로그램 파일을 수정한 경우, 이에 따른 데이터베이스 업그레이드를 잊어버린 경우 등 두 가지로 나눌 수 있다.
프로그램 파일과 데이터베이스가 일치하지 않습니다. 예를 들어 d2.5 데이터베이스를 d4.1 프로그램에서 사용하도록 구성한 경우 이 오류가 발생합니다.
해결 방법: 문제 8의 1번, 3번과 원인이 동일하므로 해결 방법도 동일합니다.

9. SQL 구문에 오류가 있습니다 번역: SQL에 구문 오류가 있습니다
분석: 포럼의 표준 절차에는 SQL 구문 오류가 없습니다. 따라서 이 오류의 원인은 일반적으로 플러그인 설치 또는 승인 없이 프로그램 수정이라는 두 가지 유형이 있습니다.
서로 다른 데이터베이스 버전을 내보내고 가져옵니다. 예를 들어, MySQL4.1의 데이터에는 문자 세트 설정과 같이 MySQL4.0에 없는 기능이 포함되어 있습니다. 0이면 SQL 구문 오류가 발생합니다.
해결책:
오류가 있는 곳을 주의 깊게 확인하고 작동하지 않으면 잘못된 프로그램을 표준 프로그램으로 교체하세요.
데이터베이스를 백업할 때 주의하시기 바랍니다. 다른 버전의 mysql에 쏟아 붓을 계획이 없다면 고려할 필요가 없습니다. DZ4.1의 백그라운드 데이터 백업을 사용하면 프롬프트에 따라 원하는 형식을 설정할 수 있습니다. 독립 호스트는 어디에 있더라도 mysql4.0 형식으로 내보낼 수도 있습니다.
mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk –skip-opt databse > test.sql

10. 키 1

에 'xxx' 항목이 중복되었습니다. 번역: xxx를 다음에 삽입하세요. make Index 1이 반복됩니다. 분석: 인덱스가 기본 고유인 경우 데이터 테이블의 데이터에 해당하는 필드는 각 레코드의 고유성을 보장해야 합니다. 그렇지 않으면 이 오류가 발생합니다.
일반적으로 데이터베이스에 작업을 작성할 때 발생합니다. 예를 들어 Discuz! 4.1 포럼 프로그램에서는 모든 회원의 사용자 이름이 고유해야 합니다. 즉, 이 때 기존 사용자 이름 레코드가 고유한 경우입니다. cdb_members 테이블에 강제로 삽입됨 이 오류가 게시되거나 레코드의 사용자 이름이 기존 사용자 이름으로 업데이트됩니다.
이 오류는 테이블 구조를 변경할 때도 발생할 수 있습니다. 예를 들어 Discuz! 4.0 포럼 데이터베이스에서는 cdb_members.username의 인덱스 유형이 index입니다. 이때 동일한 사용자 이름을 가진 레코드가 존재할 수 있도록 허용합니다. 원래 인덱스를 고유하게 만듭니다. 이때 cdb_members에 동일한 사용자 이름을 가진 레코드가 있으면 이 오류가 발생합니다.
데이터를 내보낼 때 어떤 이유로(아직 작성자가 불분명한 경우) 동일한 레코드를 반복적으로 내보내는 경우가 있기 때문에 백업 데이터를 가져올 때 이런 오류가 발생하는 것은 불가피합니다.
auto_increment 값을 수정하여 "다음 Autoindex"가 기존 레코드가 되도록 했습니다.
해결 방법: 두 가지 아이디어 중 하나는 고유 인덱스를 삭제하는 것입니다. 두 번째는 중복된 데이터 기록을 없애고 하나만 보관하는 것입니다. 분명히 첫 번째 사고방식은 바람직하지 않습니다. 그런 다음 두 번째 아이디어에 따라 위의 i ii iii
약어
에 해당하는 다음 솔루션을 생각해 냈습니다. 오류 프롬프트의 정보에 따라 데이터베이스에서 중복 레코드를 삭제하고 하나만 유지하십시오. 그런 다음 업그레이드 작업을 진행합니다.
이런 일이 발생할 가능성은 매우 적습니다. 텍스트 편집기를 사용하여 백업 문서를 열고 중복된 정보를 찾을 수 있습니다. 초과분을 제거하고 스트립 하나만 보관하십시오.
테이블에서 auto_increment가 가장 큰 레코드를 쿼리하고 auto_increment를 그보다 큰 값으로 설정하세요.
추신: 문제를 일시적으로 해결할 수 있는 테이블 "테이블 이름"을 복구합니다.

11. 중복된 키 이름 'xxx'
번역: 중복된 인덱스 이름
분석: 생성할 인덱스가 이미 존재하므로 이 오류는 주로 업그레이드 중에 발생합니다. 이미 업그레이드를 반복하여 발생한 오류일 수 있습니다. 이전 사용자가 승인 없이 추가한 인덱스가 업그레이드 파일의 인덱스와 동일할 수도 있습니다.
해결 방법: 기존 인덱스와 추가할 인덱스가 동일한지 확인하세요. 동일하다면 이 SQL 문을 건너뛰고, 기존 인덱스를 삭제하고 다시 실행하세요.

12. 중복된 컬럼명 'xxx'
번역: 중복된 필드명 xxx
분석: 추가된 xxx 필드가 이미 존재하며 업그레이드 과정에서 대부분 발생하며 이는 문제 12와 동일합니다.
해결 방법: 기존 필드에 추가할 필드와 정확히 동일한 속성이 있는지 확인하세요. 동일한 경우 SQL 문을 건너뛰고 다르면 해당 필드를 삭제하세요. 그런 다음 업그레이드 절차를 진행하십시오.

13. 테이블 'xxx'가 이미 존재합니다
번역: 데이터 테이블 xxx가 이미 존재합니다
분석: 테이블 xxx가 이미 라이브러리에 존재합니다. 이 이름을 가진 테이블을 다시 생성하려고 하면 이 오류가 발생합니다. 포럼 업그레이드에서도 마찬가지입니다. 12번 질문과 비슷합니다.
해결 방법: 기존 테이블이 생성할 테이블과 정확히 일치하는지 확인하고, 동일하다면 이 SQL 실행을 건너뛰어도 됩니다. 그렇지 않으면 기존 테이블을 먼저 삭제한 후 업그레이드 파일을 계속 실행하세요.

14. 'xxx' 데이터베이스를 생성할 수 없습니다. 데이터베이스가 존재합니다
번역: xxx 데이터베이스를 생성할 수 없습니다. 데이터베이스가 이미 존재합니다.
분석: mysql 아래의 데이터베이스 이름은 고유해야 합니다. 그렇지 않으면 이 오류가 발생합니다.
해결 방법: 기존 데이터베이스의 이름을 바꾸거나, 생성할 데이터베이스의 이름이 충돌하지 않도록 이름을 바꾸세요.

15. 요약(질문 1112131415)
이러한 질문의 오류 메시지에 중복된 키워드가 숨겨져 있습니다
그렇다면 MySQL 데이터베이스에 대해 반복할 수 없는 것은 무엇입니까?
데이터베이스 데이터베이스
동일한 데이터베이스 아래의 데이터 테이블 Table
동일한 데이터 테이블 아래의 필드 열
동일한 데이터 테이블 아래의 인덱스 키
동일한 데이터 테이블의 레코드에 있는 이러한 필드는 인덱스가 고유한 경우 반복될 수 없습니다(UNIQUE PRIMARY).

16. 알 수 없는 시스템 변수 'NAMES'
번역: 알 수 없는 시스템 변수 NAMES
분석: Mysql 버전은 문자 집합 설정을 강제로 설정하는 경우 발생합니다.
해결 방법: SQL 문에서 SET NAMES 'xxx' 문을 제거하세요.

17. 쿼리 중에 MySQL 서버에 대한 연결이 끊어졌습니다.
번역: 쿼리 중에 MySQL 서버의 연결이 끊어졌습니다.
분석: 데이터베이스에 연결할 때 가끔 이런 경우가 있습니다. 원격으로 질문합니다. SQL 문을 실행하는 동안 MySQL 서버의 연결이 끊어졌습니다.
해결책: 일반적으로 처리할 필요는 없습니다. 자주 발생하는 경우 하드웨어 환경 개선을 고려하십시오.

18. 사용자 'red'가 'max_updates' 리소스(현재 값: 500)를 초과했습니다.
번역: msql 사용자 red가 'max_updates'(최대 업데이트 수), 'max_questions'(최대 쿼리 수)를 초과했습니다. , 'max_connections'(최대 연결 수), 현재 500으로 설정됨
분석: mysql이라는 데이터베이스에 사용자에 대한 테이블이 있는 라이브러리가 있습니다. max_questions max_updates max_connections 필드는 각각 최대 쿼리 수, 최대 업데이트 수 및 최대 연결 수를 기록합니다. 이 오류는 현재 매개변수 중 하나라도 설정된 값보다 클 때 발생합니다.
해결 방법: 독립 호스트 사용자는 인증 테이블을 직접 수정할 수 있습니다. 수정 후 mysql을 다시 시작하거나 인증 테이블을 업데이트하고 mysql 프롬프트를 입력하고
FLUSH PRIVILEGES;
끝에 ';' 세미콜론이 있어야 함을 기억하세요
가상 호스트 사용자에게 이 문제가 항상 발생하는 경우 공간을 협상할 수 있습니다. 그것을 해결하기 위해 공급자.

19. 연결이 너무 많음(1040) 연결이 너무 많음
번역: 최대 연결 수에 도달했습니다.
문제 분석:
연결 수가 max_connections 및 wait_timeout과 관련된 mysql에서 설정한 값을 초과합니다. . wait_timeout 값이 클수록 연결에 대한 유휴 대기 시간이 길어져 현재 연결 수가 많아집니다.
해결 방법:
1. 가상 호스트 사용자는 공간 공급자에게 문의하여 MySQL 서버 구성을 최적화하세요.
2. 독립 호스트 사용자는 서버 관리자에게 문의하여 MySQL 서버 구성을 최적화하십시오.
MySQL 구성 파일 my.ini 또는 my.cnf에서 매개변수 수정:
max_connections= 1000
wait_timeout = 10
수정 후 MySQL을 다시 시작하십시오. 이 오류가 자주 보고되면 서버를 전반적으로 최적화하십시오.

20. 호스트 '%s'의 사용자 '%s'에 대해 정의된 권한이 없습니다.
오류 번호: 1141
문제 분석:
MySQL 현재 사용자에게 데이터베이스에 액세스할 수 있는 권한이 없습니다.
해결 방법:
1. 가상 호스트 사용자는 공간 공급자에게 문의하여 귀하에게 제공된 계정에 데이터베이스를 승인할 권한이 있는지 확인하세요.
2. 독립 호스트 사용자는 서버 관리자에게 문의하여 귀하에게 제공된 데이터베이스 계정에 이 데이터베이스를 관리할 수 있는 권한이 있는지 확인하세요.

21. '%s'의 이름을 '%s'로 바꾸는 중 오류가 발생했습니다(errno: %d)
error.:1025
문제 분석:
프로그램에서 데이터베이스 테이블 이름 문을 수정했는지 확인하세요.
해결 방법:
1. 프로그램에서 데이터베이스 테이블 이름을 수정해야 하는 위치를 확인하세요.
2. 실제 응용 프로그램에서 데이터베이스 테이블 이름을 수정해야 하는 경우 공간 공급자나 서버 관리자에게 문의하여 수정 사항을 열어주세요. 라이브러리 이름과 서버 자체의 권한은 정상인가요?

22. '%s' 파일을 읽는 동안 오류가 발생했습니다(errno: %d)
error.:1023
문제 분석:
데이터베이스 파일을 읽을 수 없습니다.
해결 방법:
1. 가상 호스트 사용자는 공간 공급자에게 문의하여 데이터베이스가 손상되지 않았는지 확인하세요.
2. 독립 호스트 사용자는 서버 관리자에게 문의하여 MySQL 자체가 정상인지, MySQL이 파일을 읽을 수 있는지 확인하세요. Linux 사용자는 MySQL 데이터베이스 파일의 소유자가 올바른지, 파일 자체가 손상되었는지 확인할 수 있습니다.

23, 많은 연결 오류로 인해 '*****' 호스트가 차단되었습니다. 'mysqladmin 플러시 호스트'
오류.:1129
로 차단을 해제하세요. 문제 분석:
데이터베이스에 예외가 있습니다. 데이터베이스를 다시 시작하십시오.
해결 방법:
1. 연결 오류가 많아 '****' 호스트가 차단되었습니다. 가상 호스트 사용자는 공간 제공업체에 문의하여 처리하시기 바랍니다. MySQL 명령 콘솔에서 Mysqladmin 플러시 호스트'를 차단 해제하거나 MySQL 데이터베이스를 다시 시작할 수 있습니다

24. 데이터베이스 삭제('%s'을(를) 삭제할 수 없음, 오류 번호: %d)
오류.:1009
문제 분석:
데이터베이스 파일을 삭제할 수 없습니다. 이로 인해 데이터베이스 삭제에 실패했습니다.
해결 방법:
1. 사용하는 데이터베이스 관리 계정에 데이터 삭제 권한이 있는지 확인하세요.
2. 데이터베이스가 존재하는지 확인하세요.

25, 테이블 핸들러에서 오류 28이 발생했습니다
error.:1030
문제 분석:
데이터베이스가 있는 디스크 공간이 가득 찼습니다.
해결 방법:
1. 가상 호스트 사용자는 공간 공급자에게 문의하여 MySQL이 있는 디스크 공간을 늘리거나 쓸모 없는 파일을 정리하세요.
2. 독립 호스트 사용자는 MySQL이 있는 디스크 공간을 늘리려면 서버 관리자에게 문의하세요. 또는 쓸모없는 파일 정리

26. 사용 가능한 메모리가 부족하지 않은 경우 새 스레드를 만들 수 없습니다. 가능한 OS 종속 버그에 대해서는 설명서를 참조하세요.
오류.:11/35
문제 분석:
데이터베이스 서버 문제로 인해 데이터베이스 작업에서 새 스레드를 생성할 수 없습니다. 일반적으로 두 가지 이유가 있습니다:
1. 서버 시스템 메모리 오버플로.
2. 환경 소프트웨어가 손상되었거나 시스템이 손상되었습니다.
해결 방법:
1. 가상 호스트 사용자는 공간 공급자에게 문의하여 데이터베이스 서버의 메모리 및 시스템이 정상적인지 확인하세요.
2. 독립 호스트 사용자는 서버 관리자에게 문의하여 서버의 메모리 및 시스템이 정상인지 확인하시기 바랍니다. 서버의 메모리가 부족할 경우 어떤 프로세스가 서버의 메모리를 소모하는지 확인하시고, 전반적인 성능 향상을 위해 서버의 메모리를 늘릴 것인지 고려하시기 바랍니다. 부하 용량.

27. 오류: 클라이언트가 서버에서 요청한 인증 프로토콜을 지원하지 않습니다. MySQL 클라이언트 업그레이드를 고려하세요.
오류.:1251
문제 분석:
MySQL을 버전 4.1 이상으로 업그레이드한 후 위의 문제가 발생하면 먼저 MySQL 클라이언트 버전이 4.1 이상인지 확인하세요(Windows에서 문제가 있는 경우 MySQL은 Windows에서 클라이언트 및 서버와 함께 설치되므로 다음으로 바로 이동하여 해결 방법을 확인하세요).
해결 방법:
1. Windows 플랫폼
MySQL에 연결된 계정의 암호화 방법을 주로 변경합니다. MySQL 4.1/5.0은 PASSWORD를 통해 암호화됩니다. 다음 두 가지 방법으로 해결할 수 있습니다.
1) mysql->SET PASSWORD FOR 'some_user'@'some_host'=OLD_PASSWORD('new_password');
2) mysql->UPDATE mysql.user SET Password=OLD_PASSWORD ( 'new_password') WHERE Host='some_host' AND User='some_user';
2. Linux/Unix 플랫폼
Linux 플랫폼에서 먼저 MySQL 클라이언트가 설치되었는지 확인하십시오. rpm을 사용하여 설치하는 것은 매우 간단합니다. Linux 코드는 다음과 같습니다.
rpm -ivh MySQL-client-4.1.15-0.i386.rpm
그런 다음 PHP를 컴파일할 때 다음을 추가합니다.
–with-mysql=/your/path/to/mysql
이 문제는 일반적으로 해결될 수 있습니다. . 이 오류가 계속 발생하면 다음과 같이 할 수 있습니다:
mysql->SET PASSWORD FOR 'some_user'@'some_host'=OLD_PASSWORD('new_password')
mysql->UPDATE mysql.user SET Password= OLD_PASSWORD( 'new_password') 호스트='some_host' AND 사용자='some_user';

28. 오류: '/var/lib/mysql/mysql.sock' 소켓을 통해 로컬 MySQL 서버에 연결할 수 없습니다.
error.:2002
문제 분석:
이 오류는 일반적으로 다음 두 가지로 인해 발생합니다. 이유:
1. MySQL 서버가 시작되지 않았습니다.
2. MySQL 서버가 시작되었지만 소켓 파일을 찾을 수 없습니다.
해결 방법:
1. 가상 호스트 사용자는 공간 공급자에게 문의하여 데이터베이스가 정상적으로 시작되는지 확인하세요.
2. 독립 호스트 사용자의 경우 MySQL 서비스가 켜져 있는지 확인하고, 켜져 있지 않고 Linux 시스템인 경우 MySQL 서비스를 시작하세요. config.inc.php를 열어서 찾으세요.
$dbhost = 'localhost'; 호스트 이름 뒤에 콜론 ':'과 MySQL 소켓 경로를 추가하세요.
예를 들어 MySQL 서버가 localhost인 경우
MySQL 소켓의 경로는 /tmp/mysql.sock
이고 다음과 같이 변경합니다.
$dbhost = 'localhost:/temp/mysql.sock';

Twenty -9, 'localhost'에서 MySQL 서버에 연결할 수 없습니다.
오류.:2003
문제 분석:
MySQL 서비스가 시작되지 않습니다. 이는 일반적으로 사용 가능한 디스크가 없는 등의 비정상적인 상황에서 MySQL이 시작되지 않기 때문에 발생합니다. space, my.ini의 MySQL basedir 경로 설정이 잘못되었습니다.
해결 방법:
1. 디스크 공간에 남은 여유 공간이 있는지 확인하고, 사용 가능한 디스크 공간을 충분히 확보해 보세요.
2. my.ini의 basedir 등의 매개변수가 올바르게 설정되었는지 확인한 후 MySQL 서비스를 다시 시작합니다.

30, 쿼리 중 MySQL 서버 연결이 끊어졌습니다
오류.:2013
문제 분석:
데이터베이스 쿼리 중에 MySQL 서버 연결이 끊어졌습니다.
해결책:
1. 일부 플러그인과 같이 프로그램에 매우 비효율적인 프로그램이 있는지 확인하십시오. 플러그인을 제거하고 서버가 정상적인지 확인할 수 있습니다.
2. 서버 자체가 리소스를 많이 사용합니다. 가상 호스트 사용자는 문의하시기 바랍니다. 공간 공급자는 독립 호스트 사용자가 서버의 정상 여부를 확인하기 위해 서버 관리자에게 문의해야 함을 확인했습니다.

31. 'max_allowed_packet' 바이트보다 큰 패킷이 있습니다.
오류 번호: 1153
문제 분석: Mantis의 업로드 첨부 파일 크기를 조정했지만 MySQL 구성 파일을 조정하지 않았습니다.
해결 방법:
1. 독립 호스트 사용자는 다음과 같이 조정하십시오.
MySQL 구성 파일(my.cnf 또는 my.ini)을 찾습니다.
[mysqld] 섹션에 문장을 추가합니다(존재하는 경우 해당 값을 조정합니다).
max_allowed_packet=10M
MySQL 서비스를 다시 시작하세요. 여기서 설정은 10MB입니다.
2. 가상 호스트 사용자는 이 매개변수를 조정하려면 공간 공급자에게 문의하세요.

더 많은 관련 무료 학습 권장 사항: mysql 튜토리얼(동영상)

위 내용은 MySQL의 일반적인 오류 분석 및 솔루션 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제