Code java tự động backup mysql
Bạn có thể sử dụng Java để tự động sao lưu cơ sở dữ liệu MySQL bằng cách thực thi các lệnh dòng lệnh MySQL thông qua Runtime hoặc ProcessBuilder. Dưới đây là một ví dụ đơn giản để tự động backup MySQL bằng Java:
Bước 1: Cài đặt MySQL#
Trước khi chạy, hãy đảm bảo rằng bạn đã cài đặt MySQL và đã thêm đường dẫn đến thư mục chứa mysqldump vào biến môi trường PATH của hệ thống.
Bước 2: Code Java#
` import java.io.*; import java.text.SimpleDateFormat; import java.util.Date;
public class MySQLBackup {
public static void main(String[] args) {
// Thông tin cơ sở dữ liệu
String dbUser = "root";
String dbPassword = "password";
String dbName = "your_database_name";
// Thời gian hiện tại để gán tên file backup
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
// Đường dẫn lưu trữ file backup
String backupFile = "backup_" + timeStamp + ".sql";
// Lệnh backup
String dumpCommand = "mysqldump -u " + dbUser + " -p" + dbPassword + " " + dbName + " -r " + backupFile;
// Thực thi lệnh backup
ProcessBuilder processBuilder = new ProcessBuilder("bash", "-c", dumpCommand); // Với hệ điều hành Linux/macOS
// Nếu dùng Windows:
// ProcessBuilder processBuilder = new ProcessBuilder("cmd.exe", "/c", dumpCommand);
try {
Process process = processBuilder.start();
// Kiểm tra tiến trình
InputStream inputStream = process.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String line;
while ((line = bufferedReader.readLine()) != null) {
System.out.println(line);
}
int processComplete = process.waitFor();
if (processComplete == 0) {
System.out.println("Backup thành công, file: " + backupFile);
} else {
System.out.println("Backup thất bại.");
}
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
} `
Giải thích:#
Lệnh mysqldump: Dùng để backup cơ sở dữ liệu MySQL.
-u root: Đăng nhập với tài khoản MySQLroot.-p password: Mật khẩu cho tài khoản MySQL.your_database_name: Tên cơ sở dữ liệu bạn muốn backup.-r backup_file.sql: Lưu kết quả backup vào tệp.sql.
Lưu ý:#
Bạn cần thay thế thông tin cơ sở dữ liệu (username, password, tên database) và thiết lập đường dẫn lưu file sao lưu phù hợp.
Chương trình trên hỗ trợ hệ điều hành Unix/Linux, nếu bạn sử dụng Windows, thay đổi
ProcessBuilderđể sử dụngcmd.exe.
Bạn có thể thêm chức năng lập lịch (scheduler) bằng cách tích hợp thư viện như Quartz Scheduler để tự động chạy backup vào các thời điểm nhất định.
1 phản hồi
Bài liên quan trong #Java
-
Mẹo dùng claude code desktop với dự án lớn
minhdev -
Hướng dẫn cài docker trên ubuntu 24
minhdev -
Hướng dẫn đầy đủ về cách cài và dùng Claude trên PC, kèm các mẹo hay!
minhdev · 💬 1 -
Cách xây dựng API cho CMS bằng Java từ A-Z
minhdev · 💬 1 -
Dể xây dựng phần mềm quản lý tài sản cho 1 doanh nghiệp ta cần làm gì
minhdev