\x89PNG\r\n\x1a\n\x00\x00\x00\x0DIHDR\x00\x00\x00\x01\x00 \x00\x00\x01\x08\x06\x00\x00\x00\x1F\x15\xC4\x89\x00\x00\x00 \x0AIDATx\x9Ccb\x00\x00\x00\x06\x00\x03\x1A\x05\x9D\x00\x00 \x00\x00IEND\xAE\x42\x60\x82
| Path : /var/www/html/yedekledb24/DatabaseBackupMasterv8/__pycache__/ |
|
B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H |
| Current File : /var/www/html/yedekledb24/DatabaseBackupMasterv8/__pycache__/backup_utils.cpython-310.pyc |
o
��g�j � @ sL d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl m Z d dl
mZmZm
Z
mZ d dlmZmZ d dlmZ e�e�Zd dlmZ d dlmZ dZe�d � zd d
lmZmZ dZW n* e y� zd d
l!mZmZ dZW n e y� dZdZdZe�"d� Y nw Y nw d
d� Z#dd� Z$dd� Z%ddd�Z&dS )� N)�datetime)�DatabaseConnection�
StorageTarget� BackupJob� BackupLog)�upload_to_storage�get_storage_space)�db)�format_size)� perform_incremental_mysql_backupTu\ Artırımlı yedekleme için XtraBackup desteği bulundu. Artırımlı yedekler alınabilir.)�encrypt_file�decrypt_fileFuN GPG şifreleme modülleri yüklenemedi. Şifreleme devre dışı bırakıldı.c
C s� z?| dv rddl }|j|||||dd�}|�� W dS | dkr5ddl}|j|||||dd�}|�� W dS t�d | � �� W d
S tyh } zt�d| � d|� d
|� d|� dt| �� �
� W Y d} ~ d
S d} ~ ww )a�
Test connection to a database server.
Args:
db_type (str): Database type (mysql, mariadb, postgresql)
host (str): Database host
port (int): Database port
username (str): Database username
password (str): Database password
database (str): Database name
Returns:
bool: True if connection successful, False otherwise
��mysql�mariadbr N� )�host�port�user�password�database�connect_timeoutT�
postgresql)r r r r �dbnamer �Unsupported database type: FzDatabase connection error for � �:�/z: )�pymysql�connect�close�psycopg2�logger�error� Exception�str)
�db_typer r �usernamer r r �connr! �e� r* �>/var/www/html/yedekledb24/DatabaseBackupMaster/backup_utils.py�test_database_connection- s@ ��,��r, c
C s� z�t jdd�}|�| j�� � |�� dd| j� �d| j� �d| j� �d| j� �dd d
ddd
dddddd| j d|g}|d }t
j|dd�}t�
|j� |jdkr^t�d|j�� � �� W dS zIt|d��(}ddl}|�|d��}t�||� W d � n1 s�w Y W d � n1 s�w Y t�|� t�||� t�d� W W dS ty� } zt�dt| �� �� W Y d} ~ W dS d} ~ ww ty� } zt�dt| �� �� W Y d} ~ dS d} ~ ww ) a+
Perform MySQL/MariaDB backup using mysqldump with optimized parameters.
Args:
db_conn (DatabaseConnection): Database connection object
temp_file (str): Path to temporary file for backup
Returns:
bool: True if backup successful, False otherwise
F)�delete� mysqldumpz--host=z--port=z--user=z--password=z--single-transactionz--quickz
--routinesz
--triggersz--eventsz--add-drop-tablez--add-drop-databasez--create-optionsz--extended-insertz
--compressz--max-allowed-packet=1Gz--databasesz-r�.gzT)�capture_outputr zmysqldump error: �rbN�wbz9Compressed MySQL backup file, reducing size significantlyz Could not compress backup file: zMySQL backup error: )�tempfile�NamedTemporaryFile�writer �encoder r r r'