File manager - Edit - /home/autoph/backup/BACKUP-SCRIPTS/backup_autoph_aportal.sh
Back
#!/bin/bash # MySQL database credentials DB_USER="root" DB_PASSWORD="@4u70hu36r0up007#" DB_NAME="autoph_aportal" # Set the current date in the format YYYY-MM-DD CURRENT_DATE=$(date +"%Y-%m-%d") A_WEEK_AGO=$(date -d "1 week ago" +%Y-%m-%d) # Specify the backup directory BACKUP_DIR="/home/autoph/backup" BACKUP_PATH="${BACKUP_DIR}/${DB_NAME}" # Create the backup filename with the current date BACKUP_FILENAME="${DB_NAME}_${CURRENT_DATE}.sql" BACKUP_AWEEKAGO="${DB_NAME}_${A_WEEK_AGO}" COMPRESSED_FILENAME="${DB_NAME}_${CURRENT_DATE}.tar.gz" # Specify the error log file ERROR_LOG_FILE="${BACKUP_DIR}/error.log" ERROR_MESSAGE="" # Email settings SENDER_NAME="AHG DB ADMIN" SENDER_EMAIL="root@5127700.autohub.ph" RECIPIENT_EMAIL="dmagtangob@autohubgroup.com" CC_EMAILS="fcrisostomo@autohubgroup.com,jdelapaz@autohubgroup.com" SUBJECT="MySQL Backup Status - ${DB_NAME}" # Check if the folder exists if [ ! -d "${BACKUP_PATH}" ]; then # If it doesn't exist, create it mkdir -p "${BACKUP_PATH}" fi # Run mysqldump command and redirect stderr to the error log file mysqldump -u"${DB_USER}" -p"${DB_PASSWORD}" "${DB_NAME}" > "${BACKUP_PATH}/${BACKUP_FILENAME}" 2> "${ERROR_LOG_FILE}" chmod 777 "${BACKUP_PATH}/${BACKUP_FILENAME}" #find and remove a file 1 week ago if [ -e "${BACKUP_PATH}/${BACKUP_AWEEKAGO}.sql" ]; then rm "${BACKUP_PATH}/${BACKUP_AWEEKAGO}.sql" fi if [ -e "${BACKUP_PATH}/${BACKUP_AWEEKAGO}.tar.gz" ]; then rm "${BACKUP_PATH}/${BACKUP_AWEEKAGO}.tar.gz" fi # Check the success of the mysqldump command if [ $? -ne 0 ]; then ERROR_MESSAGE+="${CURRENT_DATE} - The backup of ${DB_NAME} has failed." fi # Compress the Backup cd "${BACKUP_PATH}" tar -czvf "${BACKUP_PATH}/${COMPRESSED_FILENAME}" "${BACKUP_FILENAME}" # Check the success of the tar command if [ $? -ne 0 ]; then ERROR_MESSAGE+="\n ${CURRENT_DATE} - Comppression of ${BACKUP_FILENAME} has failed." fi # Optional: Remove Uncompressed Dump rm "${BACKUP_FILENAME}" # Check if any errors occurred if [ -n "${ERROR_MESSAGE}" ]; then echo "${ERROR_MESSAGE}" | tee -a "${ERROR_LOG_FILE}" # Create a temporary file with email content TEMP_FILE=$(mktemp) echo "From: ${SENDER_NAME} <${SENDER_EMAIL}>" > "${TEMP_FILE}" echo "Cc: ${CC_EMAILS}" >> "${TEMP_FILE}" echo "To: ${RECIPIENT_EMAIL}" >> "${TEMP_FILE}" echo "Subject: ${SUBJECT}" >> "${TEMP_FILE}" echo -e "\nOoops!!! Something is wrong. The backup or compression of ${DB_NAME} has failed. See the error log for details File: ${ERROR_LOG_FILE}" >> "${TEMP_FILE}" # Send email using the temporary file cat "${TEMP_FILE}" | mail -t # Remove the temporary file rm "${TEMP_FILE}" exit 1 else SUCCESS_MESSAGE="The backup of ${DB_NAME} is completed successfully. | Location: ${BACKUP_PATH} | File: ${COMPRESSED_FILENAME}" echo "${CURRENT_DATE} - ${SUCCESS_MESSAGE}" | tee -a "${BACKUP_DIR}/success.log" TEMP_FILE=$(mktemp) echo "From: ${SENDER_NAME} <${SENDER_EMAIL}>" > "${TEMP_FILE}" echo "Cc: ${CC_EMAILS}" >> "${TEMP_FILE}" echo "To: ${RECIPIENT_EMAIL}" >> "${TEMP_FILE}" echo "Subject: ${SUBJECT}" >> "${TEMP_FILE}" echo -e "\nYaay!!! ${SUCCESS_MESSAGE}" >> "${TEMP_FILE}" # Send email using the temporary file cat "${TEMP_FILE}" | mail -t # Remove the temporary file rm "${TEMP_FILE}" fi
| ver. 1.4 |
.
| PHP 7.3.33 | Generation time: 0.01 |
proxy
|
phpinfo
|
Settings