ในฐานะผู้ดูแลระบบรุ่นเยาว์ ฉันต้องสำรองข้อมูลทุกวัน และฉันไม่รู้วิธีตั้งค่างานอัตโนมัติ ดังนั้นฉันจึงพึ่งพามือของฉันเอง ซึ่งไม่เพียงแต่ยุ่งยากเท่านั้น แต่ยังไม่สามารถรับประกันได้ว่า A1 -ไวรัสไข้หวัดใหญ่แยกได้ และมือของฉันไม่เกี่ยวอะไรเลย
ดังนั้นเขียนคลาส Java และโหลดลงในงานรันอัตโนมัติของโปรแกรม SPRING แนวคิดคือการใช้จาวาเพื่อเรียกสัญลักษณ์คำสั่งของระบบและดำเนินการคำสั่ง mysqldump
·ขั้นแรกภายใต้ระบบ Windows:
เพียงเตือนให้ทุกคน:
บางคนบอกว่าจะใช้: "mysqldump --uroot --p123456 --opt" แต่ฉันไม่ประสบความสำเร็จ ในที่สุด ฉันก็ใช้วิธีการเขียนนี้สำเร็จ: "mysqldump --user=root --password=123456 --opt"
ดูเหมือนว่าจะเขียนได้ครบถ้วน
· จากนั้นภายใต้ระบบ Linux:
ปัญหาที่หลายคนพบที่นี่คือโปรแกรมไม่รายงานข้อผิดพลาด คำสั่งไม่ถูกดำเนินการ และไม่มีการสร้างไฟล์ sql ฉันได้เริ่มใช้วิธีการเขียนดังต่อไปนี้: java.lang.Runtime.getRuntime().exec(new String[] { mysql });
java.lang.Runtime.getRuntime().exec(สตริงใหม่[] { "shell "+mysql });
java.lang.Runtime.getRuntime().exec(สตริงใหม่[] { "/bin/bash "+mysql });
java.lang.Runtime.getRuntime().exec(สตริงใหม่[] { "/bin/bash/shell "+mysql });
ไม่มีวิธีใดที่ประสบความสำเร็จ ในที่สุด ฉันลองใช้วิธีการเขียนนี้และมันก็สำเร็จ:
java.lang.Runtime.getRuntime().exec(สตริงใหม่[] { "sh", "-c", mysql });
หลักฐานก็คือไดเร็กทอรี MySQL bin ถูกเพิ่มให้กับตัวแปรสภาพแวดล้อม