Last active
February 7, 2024 23:56
-
-
Save mborodov/b0c4e0b8b7f3c878d91efabb8a98b043 to your computer and use it in GitHub Desktop.
Dump bitrix database with settings from dbconn.php and Bitrix core
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
doc_root=$1 | |
# проверим передали ли параметр док рута | |
if [ -z $doc_root ]; then | |
echo Usage: $0 /path/to/document/root [backup_name] | |
exit | |
fi | |
# если не указано имя дампа по умолчанию dump | |
if [ -z $name ]; then | |
name=bitrix_core | |
fi | |
# если нету папки бекапов создаст папку | |
backup_dir=$doc_root/bitrix/backup | |
if [ ! -e $backup_dir ]; then | |
mkdir $backup_dir | |
fi | |
# создаем бекап | |
tar -zcvf $backup_dir/$name.tar.gz $doc_root/bitrix --exclude "$doc_root/bitrix/backup" --exclude "$doc_root/bitrix/cache" --exclude "$doc_root/bitrix/cache" --exclude "$doc_root/bitrix/managed_cache" --exclude "$doc_root/bitrix/stack_cache" | |
echo OK && exit | |
echo Error |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
doc_root=$1 | |
# проверим передали ли параметр док рута | |
if [ -z $doc_root ]; then | |
echo Usage: $0 /path/to/document/root [backup_name] | |
exit | |
fi | |
# если не указано имя дампа по умолчанию dump | |
if [ -z $name ]; then | |
name=dump | |
fi | |
dbconn=$doc_root/bitrix/php_interface/dbconn.php | |
# функция парсит строчки соединения с БД | |
readcfg() { | |
grep $1 $dbconn | sed 's/.*"\(.*\)".*/\1/' | |
} | |
host=`readcfg DBHost` | |
username=`readcfg DBLogin` | |
password=`readcfg DBPassword` | |
database=`readcfg DBName` | |
# проверяем настройку кодировки | |
utf=`grep 'BX_UTF' $dbconn | grep true` | |
if [ -z "$utf" ]; then | |
charset=cp1251 | |
else | |
charset=utf8 | |
fi | |
# если нету папки бекапов создаст папку | |
backup_dir=$doc_root/bitrix/backup | |
if [ ! -e $backup_dir ]; then | |
mkdir $backup_dir | |
fi | |
# создаем бекап | |
cd $doc_root && | |
mysqldump -h$host -u$username -p$password --default-character-set=$charset --no-data $database > $backup_dir/$name.sql.gz && | |
mysqldump -h$host -u$username -p$password --default-character-set=$charset --no-create-info --ignore-table=$database.b_stat_adv --ignore-table=$database.b_stat_adv_day --ignore-table=$database.b_stat_adv_event --ignore-table=$database.b_stat_adv_event_day --ignore-table=$database.b_stat_adv_guest --ignore-table=$database.b_stat_adv_page --ignore-table=$database.b_stat_adv_searcher --ignore-table=$database.b_stat_browser --ignore-table=$database.b_stat_city --ignore-table=$database.b_stat_city_day --ignore-table=$database.b_stat_city_ip --ignore-table=$database.b_stat_country --ignore-table=$database.b_stat_country_day --ignore-table=$database.b_stat_day --ignore-table=$database.b_stat_day_site --ignore-table=$database.b_stat_ddl --ignore-table=$database.b_stat_event --ignore-table=$database.b_stat_event_day --ignore-table=$database.b_stat_event_list --ignore-table=$database.b_stat_guest --ignore-table=$database.b_stat_hit --ignore-table=$database.b_stat_page --ignore-table=$database.b_stat_page_adv --ignore-table=$database.b_stat_path --ignore-table=$database.b_stat_path_adv --ignore-table=$database.b_stat_path_cache --ignore-table=$database.b_stat_phrase_list --ignore-table=$database.b_stat_referer --ignore-table=$database.b_stat_referer_list --ignore-table=$database.b_stat_searcher --ignore-table=$database.b_stat_searcher_day --ignore-table=$database.b_stat_searcher_hit --ignore-table=$database.b_stat_searcher_params --ignore-table=$database.b_stat_session --ignore-table=$database.b_stat_session_data --ignore-table=$database.b_stat_search_content --ignore-table=$database.b_search_content_freq --ignore-table=$database.b_search_content_param --ignore-table=$database.b_search_content_right --ignore-table=$database.b_search_content_site --ignore-table=$database.b_search_content_stem --ignore-table=$database.b_search_content_text --ignore-table=$database.b_search_content_title --ignore-table=$database.b_search_stem --ignore-table=$database.b_search_suggest --ignore-table=$database.b_search_tags --ignore-table=$database.b_search_user_right --ignore-table=$database.b_event_log $database | gzip -9 >> $backup_dir/$name.sql.gz && | |
echo OK && exit | |
echo Error |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
In the new version of bitrix the parameters of connection to the database are stored only in .settings.php
They are no longer stored in dbconn.php.
So: