[root@localhost cron.daily]# vim sqlBackup.sh
#!/bin/bash
_DB_PASS='password'
_BACKUP_DIR='/backup/sqlBackup/'
find $_BACKUP_DIR* -mtime +7 -exec rm -fr {} \; > /dev/null 2>&1
db_list=`echo "show databases;" | mysql -N -uroot -p${_DB_PASS}`
eval `date "+day=%d; month=%m; year=%Y"`
INSTD="$_BACKUP_DIR/sql-backup-$year-$month-$day"
mkdir -p $INSTD
for db in $db_list; do
if [ ! -d $INSTD/$db ]
then
mkdir $INSTD/$db
fi
table_list=`echo "show tables" | mysql -N -uroot -p${_DB_PASS} $db`
for table in $table_list; do
mysqldump -uroot -p${_DB_PASS} --lock-all-table --opt --quick --quote-names $db $table > $INSTD/$db/${table}.sql
done
done
2016년 12월 15일 목요일
mysql(mariadb) 테이블별 mysqldump 백업
디비별 디렉토리를 만들고, 테이블별 .sql 파일을 만든다.
2016년 5월 21일 토요일
Talend Open Studio(TOS) 암호화, 복호화.
TOS를 사용해서 DB 데이터를 contexts로 저장 하였다. contexts로 exprot 하면 해당 내용들이 파일로 저장되기 때문에, 몇몇개의 값 때문에 다시 빌드 하지 않아도 된다.
일종의 설정파일이다.
문제는 type을 password로 지정하면 암호화가 되는 데, 파일의 내용을 수정할 수가 없다.
이렇게 되면 패스워드 때문에 다시 빌드를 실행해야 되기 때문에 contexts로 만든 의미가 없어진다.
물론 String으로 바꿔서 저장하면 되지만 clear text로 저장되는 건 조금 꺼림칙하다.
db 접속을 위해서는 복호화가 가능 해야 하지 않을 까 생각했더니, 역시나 복호화가 가능하다.
TOS 소스 자체는 오픈되어 있고, github에서 볼 수 있다.
PasswordEncryptUtil.java 부분에 encryptPassword, decryptPassword가 있는데,
이 부분을 가져다 사용해서 간단한 프로그램으로 만들어 놓으면, 다시 빌드해야 하는 번거로움은 덜 수 있다.
일종의 설정파일이다.
문제는 type을 password로 지정하면 암호화가 되는 데, 파일의 내용을 수정할 수가 없다.
이렇게 되면 패스워드 때문에 다시 빌드를 실행해야 되기 때문에 contexts로 만든 의미가 없어진다.
물론 String으로 바꿔서 저장하면 되지만 clear text로 저장되는 건 조금 꺼림칙하다.
db 접속을 위해서는 복호화가 가능 해야 하지 않을 까 생각했더니, 역시나 복호화가 가능하다.
TOS 소스 자체는 오픈되어 있고, github에서 볼 수 있다.
PasswordEncryptUtil.java 부분에 encryptPassword, decryptPassword가 있는데,
이 부분을 가져다 사용해서 간단한 프로그램으로 만들어 놓으면, 다시 빌드해야 하는 번거로움은 덜 수 있다.
피드 구독하기:
글 (Atom)