mysql 커뮤니티 서버를 시작하지 못했습니다(5.7).

mysql 커뮤니티 서버를 시작하지 못했습니다(5.7).

그래서 최근에 디렉토리를 다시 설치한 후 새로운 오류가 표시되기 시작했습니다. /etc/mysql표시되는 프로세스를 사용하여 디렉토리를 다시 설치한 후 디렉토리가 올바르게 보입니다.여기, "제거된 디렉터리 복구" 방법을 사용했습니다. 이제 MySQL 서버 자체를 시작하는 데 문제가 있습니다. 파일 손실이 두려워 데이터베이스를 제거하거나 다시 설치하고 싶지 않습니다. 안전한 방법으로 이 문제를 해결하는 데 필요한 모든 세부 정보를 제공하겠습니다.

오류 정보:

Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.
invoke-rc.d: initscript mysql, action "start" failed.
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: exit-code) since Sat 2019-12-21 16:59:38 EST; 5ms ago
  Process: 3942 ExecStartPost=/usr/share/mysql/mysql-systemd-start post (code=exited, status=0/SUCCESS)
  Process: 3941 ExecStart=/usr/sbin/mysqld (code=exited, status=2)
  Process: 3933 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
 Main PID: 3941 (code=exited, status=2)

Dec 21 16:59:38 ns529730 systemd[1]: Failed to start MySQL Community Server.
Dec 21 16:59:38 ns529730 systemd[1]: mysql.service: Unit entered failed state.
Dec 21 16:59:38 ns529730 systemd[1]: mysql.service: Failed with result 'exit-code'.
dpkg: error processing package mysql-server-5.7 (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 mysql-server-5.7
E: Sub-process /usr/bin/dpkg returned an error code (1)

다음을 보여주는 systemctl status 명령:

root@ns529730:~# systemctl status mysql.service
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: activating (start-post) (Result: exit-code) since Sat 2019-12-21 17:10:40 EST; 14s ago
  Process: 6727 ExecStart=/usr/sbin/mysqld (code=exited, status=2)
  Process: 6720 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
 Main PID: 6727 (code=exited, status=2);         : 6728 (mysql-systemd-s)
   Memory: 15.0M
      CPU: 327ms
   CGroup: /system.slice/mysql.service
           └─control
             ├─6728 /bin/bash /usr/share/mysql/mysql-systemd-start post
             └─6784 mysqladmin ping

Dec 21 17:10:40 ns529730 systemd[1]: Starting MySQL Community Server...
Dec 21 17:10:41 ns529730 systemd[1]: mysql.service: Main process exited, code=exited, status=2/INVALIDARGUMENT

시스템: 우분투 16.04 MySQL 버전: 5.7

답변1

innodb_force_recovery = 1좋아, 내 파일의 [mysqld] 아래에 추가하여 문제를 해결했습니다 mysqld.cnf. 처음에는 작동하지 않을 수 있으므로 1부터 10까지의 숫자를 시도해 볼 수 있습니다. 또한 이전 mysql 버전을 사용하는 사람들의 경우 이전 버전에는 구성 파일이 있지만 etc/mysql/my.cnf5.7 mysql 버전에는 etc/mysql/mysql.conf.d/mysqld.cnf 답변에서 가져온 내용이 있으므로 기본 구성 파일에서 해당 작업을 수행해야 합니다.여기. 편집을 마친 후 다음을 사용하여 mysql 서버를 시작하십시오.sudo systemctl start mysql

관련 정보