mysql을 다시 설치하면 데이터베이스가 손실됩니까? mysql에 문제가 있는데 다시 설치하고 싶은

로컬 호스트에 MySQL이 설치되어 있습니다. mysql에 문제가 있는데 다시 설치하고 싶은 경우 어떻게됩니까? 기존 데이터베이스가 손실됩니까?



답변

아니요, 다시 설치해 mysql-server도 데이터베이스 파일은 삭제되지 않으며의 패키지 파일 만 삭제 mysql-server됩니다. 서버를 다시 설치 한 후 파일 (데이터베이스)에 액세스 할 수 있습니다.

mysql-server를 제거하고 설치하려면 :

sudo apt-get purge mysql-server
sudo apt-get install mysql-server

데이터베이스도 삭제하려면 mysql을 제거하기 전에 먼저 데이터베이스를 삭제해야합니다. mysql 프롬프트에서 데이터베이스를 깨끗하게 삭제하려면 다음을 입력하십시오.

drop database <database_name>

데이터베이스 파일을 삭제하는 다른 방법을 찾았지만 이것이 데이터베이스를 삭제하는 확실한 방법인지 확실하지 않으므로 소금을 조금 바르십시오.

에서 유래에 대한 질문 :

(데이터베이스 파일의 위치)는 설치에 따라 다르지만 / var / lib / mysql이면 다음과 같습니다.

  • MyISAM 테이블은 / var / lib / mysql / databasename /의 개별 파일에 저장됩니다.
  • InnoDB는 / var / lib / mysql / ibdata에 있습니다 (innodb_per_table 설정을 사용하지 않은 경우,이 경우 MyISAM 테이블과 매우 유사하게 저장 됨)

따라서이 두 위치에서 데이터베이스 위치를 확인하고 데이터베이스 디렉토리를 삭제하십시오 (읽고 삭제하려면 수퍼 유저 권한이 필요함).


답변

이것은 오래된 질문이지만 그럼에도 불구하고 내 5 ¢는 다음과 같습니다.

  1. DO가 백업을 사용하여, 예를 들면, 먼저 데이터베이스를 mysqldump.
  2. 이제 sudo apt-get purge mysql-server mysql-server-5.7 . 데이터베이스 파일을 정말로 삭제할 것인지 묻는 메시지가 표시됩니다.Yes
  3. 다음을 사용하여 mysql을 다시 설치하십시오. sudo apt-get install mysql-server mysql-server-5.7
  4. mysql 데이터베이스를 시작하십시오
  5. 다음을 사용하여 데이터베이스와 해당 사용자를 다시 작성하십시오. mysql명령 행 유틸리티를
  6. 백업에서 덤프 가져 오기

이 전체 절차의 장점을 물을 수 있습니다. mysql 데이터베이스에 많은 트랜잭션이 있고 디스크의 많은 공간을 차지하는 경우가 있습니다. 데이터베이스를 삭제하고 다시 작성하면 데이터베이스를 다시 축소 할 수 있습니다.


답변

사용하다 sudo apt-get remove mysql-server .

sudo apt-get purge mysql-server의 파일을 제거하는를 사용하지 마십시오 /var/lib/mysql.