Linux에서 데이터베이스 백업 및 복원 방법
Linux 운영 체제에서 데이터베이스 백업 및 복원은 매우 중요한 작업입니다. 데이터 손실을 방지하기 위해서든 데이터베이스를 마이그레이션하기 위해서든 이 기술을 숙달해야 합니다. 이 문서에서는 Linux에서 데이터베이스를 백업 및 복원하는 방법을 소개하고 해당 코드 예제를 제공합니다.
1. 데이터베이스 백업
MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템인 mysqldump 명령을 사용하여 MySQL 데이터베이스를 백업할 수 있습니다. 아래와 같이:
mysqldump -u <username> -p<password> <database_name> > <backup_file.sql>
여기서 <username>
는 데이터베이스의 사용자 이름이고, <password>
는 데이터베이스의 비밀번호이며, < Database_name>< /code>는 백업할 데이터베이스의 이름이고, <code><backup_file.sql>
은 백업 파일의 경로와 파일 이름입니다. 예를 들어 "mydb"라는 데이터베이스를 백업하려면 다음 명령을 실행할 수 있습니다. <username>
是数据库的用户名,<password>
是数据库的密码,<database_name>
是要备份的数据库名称,<backup_file.sql>
是备份文件的路径及文件名。例如,要备份名为"mydb"的数据库,可以执行以下命令:
mysqldump -u root -p123456 mydb > /backup/mydb_backup.sql
类似地,备份PostgreSQL数据库可以使用pg_dump命令。如下所示:
pg_dump -U <username> -W -Ft <database_name> -f <backup_file.tar>
其中,<username>
是数据库的用户名,<database_name>
是要备份的数据库名称,<backup_file.tar>
是备份文件的路径及文件名。例如,要备份名为"mydb"的数据库,可以执行以下命令:
pg_dump -U postgres -W -Ft mydb -f /backup/mydb_backup.tar
二、还原数据库
要还原MySQL数据库,可以使用以下命令:
mysql -u <username> -p<password> <database_name> < <backup_file.sql>
其中,<username>
是数据库的用户名,<password>
是数据库的密码,<database_name>
是要还原的数据库名称,<backup_file.sql>
是备份文件的路径及文件名。例如,要将备份文件"mydb_backup.sql"还原到名为"mydb"的数据库中,可以执行以下命令:
mysql -u root -p123456 mydb < /backup/mydb_backup.sql
要还原PostgreSQL数据库,可以使用以下命令:
pg_restore -U <username> -d <database_name> <backup_file.tar>
其中,<username>
是数据库的用户名,<database_name>
是要还原的数据库名称,<backup_file.tar>
pg_restore -U postgres -d mydb /backup/mydb_backup.tar
마찬가지로 다음 명령을 사용할 수 있습니다. PostgreSQL 데이터베이스를 백업하는 pg_dump 명령입니다. 아래와 같이
#!/bin/bash #数据库备份路径 backup_dir="/backup" #数据库用户名 username="root" #数据库密码 password="123456" #需要备份的数据库名称 database_name="mydb" #备份文件名 backup_file="${backup_dir}/${database_name}_backup_$(date +%Y%m%d%H%M%S).sql" #执行备份命令 mysqldump -u ${username} -p${password} ${database_name} > ${backup_file} #删除过期备份(保留最近7天的备份) find ${backup_dir} -name "${database_name}_backup_*" -type f -mtime +7 -exec rm -f {} ;
여기서, <username>
는 데이터베이스의 사용자 이름이고, <database_name>
은 백업할 데이터베이스의 이름이며, <backup_file .tar>
는 백업 파일의 경로와 파일 이름입니다. 예를 들어 "mydb"라는 데이터베이스를 백업하려면 다음 명령을 실행할 수 있습니다.
crontab -e
2. 데이터베이스 복원
MySQL 데이터베이스 복원MySQL 데이터베이스를 복원하려면 다음 명령을 사용할 수 있습니다.
0 2 * * * /bin/bash /path/to/backup.sh
여기서, <username>
은 데이터베이스의 사용자 이름이고, <password>
는 데이터베이스의 비밀번호이고, <database_name> code>는 복원할 데이터베이스의 이름이고,
<backup_file.sql>
은 백업 파일의 경로와 파일 이름입니다. 예를 들어 백업 파일 "mydb_backup.sql"을 "mydb"라는 데이터베이스로 복원하려면 다음 명령을 실행할 수 있습니다.
<username>
는 데이터베이스의 사용자 이름이고, <database_name>
은 데이터베이스의 이름입니다. 복원하려면 <backup_file .tar>
는 백업 파일의 경로와 파일 이름입니다. 예를 들어, "mydb_backup.tar" 백업 파일을 "mydb"라는 데이터베이스에 복원하려면 다음 명령을 실행하면 됩니다. 🎜rrreee🎜 3. 데이터베이스를 정기적으로 백업하세요. 🎜🎜 데이터베이스를 정기적으로 백업하면 보안과 보안을 보장할 수 있습니다. 데이터의 무결성. 셸 스크립트를 작성하고 crontab 예약 작업을 사용하면 데이터베이스를 자동으로 백업할 수 있습니다. 🎜🎜다음은 간단한 백업 스크립트의 예입니다. 🎜rrreee🎜위 스크립트를 backup.sh로 저장하고 실행 권한을 추가하세요. 🎜🎜다음으로 crontab을 사용하여 예약된 작업을 추가합니다. 🎜rrreee🎜열린 파일에 매일 오전 2시에 백업 작업이 실행된다는 내용을 추가합니다. 🎜rrreee🎜저장하고 종료합니다. 🎜🎜위의 방법을 사용하면 Linux에서 데이터베이스를 쉽게 백업 및 복원하고 정기적으로 백업 작업을 수행할 수 있습니다. 데이터베이스의 보안과 무결성을 보장하는 것은 데이터가 손실되지 않도록 하는 중요한 조치 중 하나입니다. 🎜위 내용은 Linux에서 데이터베이스를 백업하고 복원하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!