mysql을 다시 설치하면 데이터베이스가 손실됩니까?


14

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


mysql로 ​​문제를 설명하는 것이 낫지 않습니까? 그래서 사람들은 당신이 그 문제를 해결하도록 도울 수 있습니다. 다시 설치하는 것이 문제를 해결하는 데 도움이됩니다.
rechengehirn

1
조심스럽게 데이터베이스를 먼저 백업하는 것이 좋습니다. mysqldump를 --all-databases 옵션과 함께 사용할 수 있습니다. dev.mysql.com/doc/refman/5.7/en/...
Progrock에게

답변:


11

아니요, 다시 설치해 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 테이블과 매우 유사하게 저장 됨)

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


원하는 경우 파일을 삭제하는 방법으로 어떻게합니까?
Aditya MP

3
이다 purge나는 데이터가 손실되지 않을 경우 올바른 명령은?
ahmadali shafiee

0

이것은 오래된 질문이지만 그럼에도 불구하고 내 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 데이터베이스에 많은 트랜잭션이 있고 디스크의 많은 공간을 차지하는 경우가 있습니다. 데이터베이스를 삭제하고 다시 작성하면 데이터베이스를 다시 축소 할 수 있습니다.


어떤 경우에는 db를 삭제하는 것이 옵션이 아닙니다.
Siddharth

0

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

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


모든 MySQL 데이터베이스를 제거하라는 메시지가 표시되면 <No>를 선택하십시오.
mariozawa
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.