Tôi đã cài đặt MySQL trên localhost của tôi. Điều gì xảy ra nếu tôi gặp vấn đề với mysql và tôi muốn cài đặt lại lần nữa? Tôi có bị mất cơ sở dữ liệu hiện tại không?
Tôi đã cài đặt MySQL trên localhost của tôi. Điều gì xảy ra nếu tôi gặp vấn đề với mysql và tôi muốn cài đặt lại lần nữa? Tôi có bị mất cơ sở dữ liệu hiện tại không?
Câu trả lời:
Không, cài đặt lại mysql-server
sẽ không xóa các tệp cơ sở dữ liệu của bạn, chỉ xóa các tệp gói của mysql-server
. Bạn sẽ có thể truy cập các tệp của mình (cơ sở dữ liệu) sau khi bạn cài đặt lại máy chủ.
Để thanh lọc và cài đặt máy chủ mysql:
sudo apt-get purge mysql-server
sudo apt-get install mysql-server
Nếu bạn cũng muốn xóa cơ sở dữ liệu, bạn phải xóa nó trước khi xóa mysql. Để xóa cơ sở dữ liệu một cách sạch sẽ, trên loại dấu nhắc mysql:
drop database <database_name>
Tôi đã tìm thấy một cách khác để xóa các tệp cơ sở dữ liệu, nhưng tôi không chắc liệu đây có phải là một cách sạch để xóa cơ sở dữ liệu hay không, vì vậy hãy lấy nó bằng một nhúm muối:
Từ một câu hỏi trên stackoverflow :
Nó (Vị trí của các tệp cơ sở dữ liệu) là cài đặt cụ thể, nhưng nếu bạn / var / lib / mysql, thì:
- Các bảng MyISAM sẽ được lưu trữ trong các tệp riêng lẻ trong / var / lib / mysql / databasename /
- InnoDB cư trú trong / var / lib / mysql / ibdata (trừ khi bạn đã sử dụng cài đặt innodb_per_table, trong trường hợp đó, nó được lưu trữ giống như các bảng MyISAM)
Vì vậy, hãy kiểm tra vị trí của cơ sở dữ liệu của bạn ở hai vị trí này và xóa thư mục của cơ sở dữ liệu (yêu cầu đặc quyền siêu người dùng để đọc và xóa).
purge
lệnh chính xác nếu tôi không muốn mất dữ liệu?
Đây là một câu hỏi cũ, tuy nhiên, đây là 5 của tôi:
mysqldump
.sudo apt-get purge mysql-server mysql-server-5.7
. Nó sẽ hỏi bạn có thực sự muốn xóa các tệp cơ sở dữ liệu không, nhấp vàoYes
sudo apt-get install mysql-server mysql-server-5.7
mysql
tiện ích dòng lệnhBạn có thể hỏi toàn bộ quy trình này phù hợp với điều gì: Có những trường hợp cơ sở dữ liệu mysql đã có nhiều giao dịch lớn và chiếm nhiều không gian trên đĩa. Phá hủy và xây dựng lại cơ sở dữ liệu là một cách thu nhỏ lại.