Điểm:0

mysql, di chuyển cơ sở dữ liệu riêng lẻ so với toàn bộ thư mục dữ liệu

lá cờ us

Tôi cần di chuyển cơ sở dữ liệu khách hàng mysql sang một đĩa khác, với mục đích:

 1. Tách dữ liệu người dùng khỏi tệp hệ thống
 2. Dễ dàng sao lưu riêng dữ liệu hệ thống và người dùng
 3. Dễ dàng nâng cấp hệ thống

Các bài viết sau đây rất hữu ích:

  [cách di chuyển-mysql-datadir-to-another-drive][1]
  [move-a-mysql-database-to-another-location][2]

Chạy trên hệ thống ubuntu-18, có vẻ như biến innodb_file_per_table được đặt theo mặc định:

mysql> HIỂN THỊ CÁC BIẾN TOÀN CẦU NHƯ 'innodb_%';
...
| innodb_file_per_table | TRÊN 
...

(Kết quả tương tự mà không có TOÀN CẦU)

tôi không thể tìm thấy không tí nào tham chiếu đến innodb_file_per_table trong bất kỳ tệp cấu hình nào; tập tin duy nhất có nhiều trong đó là

  /etc/mysql/mysql.conf.d/mysqld.cnf

Tôi lo lắng về những gì vẫn đang được lưu trữ trong các tập tin

  /var/lib/mysql/ibdata1
                /ib_logfileN

Tôi đã nhận thấy rằng chỉ cần truy cập cơ sở dữ liệu sẽ khiến chúng được cập nhật.

Câu hỏi của tôi là:

  1. Nếu tôi chỉ di chuyển cơ sở dữ liệu khách hàng (sang một đĩa riêng) và đĩa hệ thống bị mất và cần được tạo lại từ đầu, sẽ mất gì không?

  2. Tốt hơn hết là tôi nên di chuyển tất cả các cơ sở dữ liệu, bao gồm (mysql, performance_schema và sys) vào một đĩa riêng?

  3. Tốt hơn hết là tôi nên di chuyển toàn bộ thư mục dữ liệu sang một đĩa riêng, trỏ đến nó thông qua biến "datadir" trong /etc/mysql/mysql.conf.d/mysqld.cnf?

  4. sự phân nhánh của là gì không phải sử dụng tùy chọn 3 nếu đĩa hệ thống bị mất?

Điểm:0
lá cờ ua

Tốt nhất là di chuyển tất cả các bảng của MySQL sang một đĩa khác. Bất kỳ nỗ lực nào nhằm chia nhỏ 'khách hàng' sẽ làm tăng thêm độ phức tạp và khiến mục tiêu của bạn trở nên khó khăn. (Nếu điều đó trở thành một yêu cầu, chúng ta có thể thảo luận thêm.)

Về cơ bản, tệp duy nhất bị bỏ lại do di chuyển như vậy là (các) tệp cấu hình. Bạn đã đề cập /etc/mysql/mysql.conf.d/mysqld.cnf, nhưng có thể có các tệp cấu hình khác xung quanh đó.

Ở một nơi khác là một thư mục lớn hơn chứa nhiều tệp, cộng với các thư mục con tương ứng với "cơ sở dữ liệu" mà bạn đã tạo. Tôi chỉ đơn giản là di chuyển toàn bộ cái cây đó. Nếu bạn đang sử dụng HĐH dựa trên linux, thì hãy sử dụng liên kết tượng trưng từ vị trí cũ sang vị trí mới. Không cần thay đổi cấu hình rõ ràng.

Sau đó, nếu một trong hai đĩa bị hỏng, bạn không thể truy cập dữ liệu. Quan điểm của tôi là việc loay hoay với các tệp và thư mục không nhất thiết sẽ giúp bạn tiến gần hơn đến "bảo mật".

Thay vào đó, hãy tập trung vào các bản sao lưu. Và/hoặc "Sao chép". Điều đó sau này đòi hỏi thêm người phục vụ và đưa ra một bản sao hoàn chỉnh của dữ liệu. Sau đó, nếu một trong hai máy chủ gặp sự cố, bạn không mất gì cả.

LVM là một kỹ thuật sao lưu khác; những lợi ích từ việc có một đĩa cho cơ sở dữ liệu. Nhưng điều đó thêm một loạt các phức tạp.

Đề nghị bạn đọc thêm một số, và giữ một tâm trí cởi mở. Bạn sẽ tìm thấy nhiều thứ phù hợp trực tiếp với ý tưởng của mình.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.