网上找了找备份还原的方法,实践如下
mysql myisam可以通过直接复制frm,MYD,MYI,来备份和还原,非常的方便。innodb其实也是可以的,不过就比较麻烦了。
gitlab的默认备份路径是/var/opt/gitlab/backups/,可以通过gitlab.rb来修改这个配置路径,gitlab_rails['backup_path'] = "/data/pgsql_bak"
redis的备份和还原,借助了第三方的工具,redis-dump
大数据量备份与还原,始终是个难点。当MYSQL超10G,用mysqldump来导出就比较慢了。在这里推荐xtrabackup,这个工具比mysqldump要快很多。
mongodb数据备份和还原主要分为二种,一种是针对于库的mongodump和mongorestore,一种是针对库中表的mongoexport和mongoimport。
不知道大家有没有想过,我们向mysql数据库中写入了数据,这些数据存放在什么地方。在linux下手动编译安装过mysql的人,我想会知道存放在什么地方,mysql_install_db有这一步操作,他是产生mysql自带的数据库,执行了这一步操作后,你可以到/mysql安装目录/data(这个数据目录,可以从my.cnf中查到datadir) 目录下面就会出一个mysql的文件夹。
一,frm myd myi opt的解释
1,.frm保存的是描述了表的结构
一,准备好shell脚本
vi /home/zhangy/database_bak.sh #!/bin/sh # File: /home/zhangy/database_bak.sh # Database info bakupmysql TANK 2009/11/04 DB_USER="root" #用户名 DB_PASS="********" #密码 DB_NAME="myblog" #要备份的数据名 阅读全文>>
一,数据库的备份与导入
1),数据库的备份
1.导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
例:mysqldump -u dbadmin -p myblog > /home/zhangy/blog/database_bak/myblog.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
例:mysqldump -u dbadmin -p myblog wp_users> /home/zhangy/blog/database_bak/blog_users.sql
3.导出一个数据库结构
mysqldump -u dbadmin -p -d --add-drop-table myblog > /home/zhangy/blog/database_bak/blog_struc.sql
说明:-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
4.导出数据库一个表结构
mysqldump -u dbadmin -p -d --add-drop-table myblog wp_users> /home/zhangy/blog/database_bak/blog_users_struc.sql
说明:-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table