Hướng dẫn move mysql data directory ubuntu - di chuyển thư mục dữ liệu mysql ubuntu
Giới thiệuCơ sở dữ liệu phát triển theo thời gian, đôi khi vượt xa không gian trên hệ thống tệp. Bạn cũng có thể gặp phải sự tranh chấp đầu vào/đầu ra (I/O) khi chúng nằm trên cùng một phân vùng với phần còn lại của hệ điều hành. Mảng dự phòng của các đĩa độc lập (RAID), lưu trữ khối mạng và các thiết bị khác, có thể cung cấp dự phòng và các tính năng mong muốn khác. Cho dù bạn có thêm không gian, đánh giá các cách để tối ưu hóa hiệu suất hoặc muốn tận dụng các tính năng lưu trữ khác, hướng dẫn này sẽ hướng dẫn bạn chuyển thư mục dữ liệu MySQL. Show
Điều kiện tiên quyếtĐể hoàn thành hướng dẫn này, bạn sẽ cần:
Trong hướng dẫn này, chúng tôi đã di chuyển dữ liệu sang một thiết bị lưu trữ khối được gắn vào 3. Bạn có thể tìm hiểu cách thiết lập một trong tài liệu sau về khối lượng lưu trữ khối trên DigitalOcean.Bất kể lưu trữ cơ bản nào bạn sử dụng, hướng dẫn này có thể giúp bạn chuyển thư mục dữ liệu đến một vị trí mới. Bước 1 - Di chuyển thư mục dữ liệu MySQLĐể chuẩn bị để di chuyển thư mục dữ liệu MySQL, hãy để xác minh vị trí hiện tại bằng cách bắt đầu phiên MySQL tương tác bằng thông tin quản trị. Chạy lệnh sau để mở dấu nhắc máy chủ MySQL:
Lưu ý: Nếu bạn đã định cấu hình người dùng MySQL gốc của mình để xác thực bằng mật khẩu, bạn có thể kết nối với MySQL vì người dùng này với lệnh sau:: If you configured your root MySQL user to authenticate using a password, you can connect to MySQL as this user with the following command:
Khi được nhắc, hãy cung cấp mật khẩu người dùng MySQL. Sau đó, từ lời nhắc MySQL, chạy câu lệnh 4 sau. Điều này sẽ trả về thư mục dữ liệu hoạt động của phiên bản MySQL này, luôn được ghi lại trong biến MySQLTHER 5 :::
Đầu ra này xác nhận rằng MySQL được cấu hình để sử dụng thư mục dữ liệu mặc định, 6, do đó, thư mục bạn cần di chuyển. Khi bạn đã xác nhận điều này, hãy viết 7 để rời khỏi màn hình và quay lại dấu nhắc lệnh của bạn:
Để đảm bảo tính toàn vẹn của dữ liệu, hãy tắt MySQL trước khi thực hiện các thay đổi đối với thư mục dữ liệu:
Lưu ý rằng 8 không hiển thị kết quả của tất cả các lệnh quản lý dịch vụ, vì vậy nếu bạn muốn kiểm tra xem bạn có thành công hay không, hãy sử dụng lệnh sau:
Bạn có thể xác nhận nó đã ngừng hoạt động nếu dòng 9 trong đầu ra nêu rõ, nó 0 như được tô sáng trong ví dụ sau:
Bây giờ máy chủ đã tắt, bạn có thể sao chép thư mục cơ sở dữ liệu hiện có, 1, vào vị trí mới, 3, với 3. Sử dụng cờ 4 bảo tồn các quyền và các thuộc tính thư mục khác, trong khi 5 cung cấp đầu ra dài dòng để bạn có thể làm theo tiến trình:Lưu ý: Hãy chắc chắn rằng không có dấu gạch chéo trên thư mục, có thể được thêm vào nếu bạn sử dụng hoàn thành tab. Khi có một dấu gạch chéo kéo dài, 3 will dump the contents of the directory into the mount point instead of transferring it into a containing 7 directory.
Khi lệnh 3 hoàn tất, đổi tên thư mục hiện tại với tiện ích mở rộng 9 và giữ cho cho đến khi bạn xác nhận việc di chuyển đã thành công. Bằng cách đổi tên nó, bạn sẽ tránh sự nhầm lẫn có thể phát sinh từ các tệp ở cả vị trí mới và địa điểm cũ: 0Bây giờ bạn đã sẵn sàng để tiến hành bước tiếp theo và bắt đầu cấu hình. Bước 2 - Chỉ vào vị trí dữ liệu mớiMySQL có một số cách để ghi đè giá trị cấu hình. Theo mặc định, 5 được đặt thành 1 trong tệp 2. Chỉnh sửa tệp này trong trình soạn thảo văn bản ưa thích của bạn để phản ánh thư mục dữ liệu mới. Ở đây chúng tôi sẽ sử dụng 3: 1Tìm dòng bắt đầu với 4. Khéo léo dòng bằng cách xóa dấu hiệu pound ( 5) và thay đổi đường dẫn để phản ánh vị trí mới. Trong trường hợp này, nội dung tệp được cập nhật sẽ như sau:/etc/mysql/mysql.conf.d/mysqld.cnf 2Khi bạn đã thực hiện bản cập nhật này, hãy lưu và thoát tệp. Nếu bạn sử dụng 3, bạn có thể làm điều này bằng cách nhấn 7, thì 8 và 9. Bây giờ, nó gần như là thời gian để đưa MySQL lên một lần nữa, nhưng trước đó, có một điều nữa để cấu hình để thành công.Bước 3 - Định cấu hình các quy tắc kiểm soát truy cập apparmorTrong bước này, bạn cần nói với Apparmor để cho MySQL ghi vào thư mục mới bằng cách tạo bí danh giữa thư mục mặc định và vị trí mới. Apparmor là một mô -đun bảo mật trong nhân Linux cho phép các quản trị viên hệ thống hạn chế các khả năng của chương trình thông qua hồ sơ chương trình, thay vì chính người dùng. Bắt đầu bằng cách mở và chỉnh sửa tệp 0 của Apparmor: 3Ở dưới cùng của tệp, giải phóng dòng sau và thêm quy tắc bí danh: /etc/apparmor.d/tunables/alias 4Khi bạn hoàn thành, hãy lưu và thoát tệp. Đối với các thay đổi có hiệu lực, hãy khởi động lại APPARMOR: 5Lưu ý: Nếu bạn bỏ qua bước cấu hình apparmor, bạn sẽ nhận được thông báo lỗi sau: If you skipped the AppArmor configuration step, you will receive the following error message: 6Vì thông báo này không tạo ra kết nối rõ ràng giữa apparmor và thư mục dữ liệu, lỗi này có thể mất một thời gian để tìm ra. Khi bạn đã cấu hình đúng cách, bạn có thể chuyển sang bước tiếp theo. Bước 4 - Khởi động lại MySQLBây giờ, thời gian để bắt đầu MySQL. Tuy nhiên, nếu bạn làm, bạn sẽ gặp phải một lỗi khác. Thay vì sự cố Apparmor, lỗi này là do 1, một tập lệnh hỗ trợ quản lý MySQL thông qua 2. Bạn có thể kiểm tra tập lệnh này bằng lệnh sau: 7Tập lệnh này kiểm tra sự tồn tại của một thư mục, 3 hoặc liên kết tượng trưng, 4, phù hợp với đường dẫn thư mục dữ liệu mặc định. Nếu nó không tìm thấy một trong hai điều này, tập lệnh sẽ kích hoạt lỗi và ngăn MySQL bắt đầu:/usr/share/mysql/mysql-systemd-start 8Sau khi bạn kiểm tra tệp này, hãy đóng nó mà không thực hiện bất kỳ thay đổi nào. Vì bạn cần một thư mục phù hợp hoặc liên kết tượng trưng để khởi động máy chủ, bạn phải tạo cấu trúc thư mục tối thiểu để vượt qua kiểm tra môi trường tập lệnh: 9Bây giờ bạn đã sẵn sàng để bắt đầu MySQL: 0Xác nhận MySQL đang chạy bằng cách kiểm tra trạng thái:
2Để đảm bảo rằng thư mục dữ liệu mới thực sự được sử dụng, hãy bắt đầu Màn hình MySQL: 3Bây giờ truy vấn cho giá trị của thư mục dữ liệu một lần nữa:
5Sau khi bạn khởi động lại MySQL và xác nhận rằng nó sử dụng vị trí mới, hãy tận dụng cơ hội để đảm bảo rằng cơ sở dữ liệu của bạn có chức năng đầy đủ. Khi bạn đã hoàn thành, hãy thoát cơ sở dữ liệu như sau và quay lại dấu nhắc lệnh:
Bây giờ bạn đã xác minh tính toàn vẹn của bất kỳ dữ liệu hiện có nào, bạn có thể xóa thư mục dữ liệu sao lưu: 8Sau đó, khởi động lại MySQL một lần cuối cùng: 9Và cuối cùng, xác nhận nó hoạt động như mong đợi bằng cách kiểm tra trạng thái:
1Nếu dòng 9 tuyên bố 6 điều này xác nhận rằng MySQL đang hoạt động.Sự kết luậnTrong hướng dẫn này, bạn đã học cách di chuyển thư mục dữ liệu MySQL, sang một vị trí mới và cập nhật danh sách kiểm soát truy cập apparmor Ubuntu, để phù hợp với điều chỉnh. Mặc dù chúng tôi đã sử dụng một thiết bị lưu trữ khối, các hướng dẫn ở đây phải phù hợp để xác định lại vị trí của thư mục dữ liệu bất kể công nghệ cơ bản. Để biết thêm thông tin về việc quản lý các thư mục dữ liệu MySQL, hãy xem các phần sau trong tài liệu chính thức của MySQL:
Làm cách nào để chuyển thư mục dữ liệu MySQL đến một vị trí mới trong Ubuntu 20?Bất kể lưu trữ cơ bản nào bạn sử dụng, hướng dẫn này có thể giúp bạn chuyển thư mục dữ liệu đến một vị trí mới ... Bước 1 - Di chuyển thư mục dữ liệu MySQL. .... Bước 2 - Chỉ vào vị trí dữ liệu mới. .... Bước 3 - Định cấu hình các quy tắc kiểm soát truy cập apparmor. .... Bước 4 - Khởi động lại MySQL .. Tôi có thể sao chép thư mục dữ liệu MySQL sang máy chủ khác không?Có hai lựa chọn rộng rãi.Chuyển/var/lib/mysql dir vào máy chủ mới như hiện tại hoặc thực hiện quy trình xuất và nhập.Sao chép toàn bộ thư mục MySQL sẽ có nghĩa là ít dữ liệu được truyền và sao chép chính xác cơ sở dữ liệu từ máy này sang máy kia.Transfer the /var/lib/mysql dir to the new server as it is or do an export and import process. Copying the whole mysql directory will mean less data being transferred and an exact replication of the database from one machine to the other.
Đường dẫn MySQL trên Ubuntu ở đâu?Định cấu hình máy chủ MySQL trên hệ điều hành Ubuntu.. Tìm các tệp cấu hình.Theo mặc định, bạn có thể tìm thấy các tệp cấu hình MySQL® trong: /etc /mysql..... của tôi.Tệp cấu hình CNF..... Nhật ký tệp..... mysqld và mysqld_safe..... mysqladmin..... Sao lưu..... Cơ sở dữ liệu..... Những bài viết liên quan.. Dữ liệu MySQL được lưu trữ trong Linux ở đâu?MySQL lưu trữ các tệp DB trong/var/lib/mysql theo mặc định, nhưng bạn có thể ghi đè này trong tệp cấu hình, thường được gọi là/etc/my.CNF, mặc dù Debian gọi nó là/etc/mysql/my.CNF.Lưu câu trả lời này./var/lib/mysql by default, but you can override this in the configuration file, typically called /etc/my. cnf , although Debian calls it /etc/mysql/my. cnf . Save this answer. |