精华内容
下载资源
问答
  • MySQL备份与恢复

    2020-10-23 16:17:59
    MySQL备份与恢复 二进制格式安装MySQL Mariadb和MySQL都是出自同一个开发团队,所以它们的语法格式是通用的,之前写过Maridb的安装,所以今天介绍一下MySQL的二进制安装,二进制安装就相当于Windows中绿色软件,也...

    MySQL备份与恢复

    二进制格式安装MySQL

    • Mariadb和MySQL都是出自同一个开发团队,所以它们的语法格式是通用的,之前写过Maridb的安装,所以今天介绍一下MySQL的二进制安装,二进制安装就相当于Windows中绿色软件,也是工作中最常用的安装方式。

    Mariadb的安装

    • 下载二进制格式的MySQL软件包,推荐从MySQL官方网站下载
    //推荐下载MySQL5.7.31的版本,因为MySQL8.0的版本是收费的
    [root@server ~]# cd /usr/src/
    [root@server src]# wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
    ...
    
    //创建用户和组
    [root@server src]# useradd -r -M -s /sbin/nologin mysql
    
    //解压软件至/usr/local目录下,目录的位置可以是其他的地方
    [root@server src]# tar xf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
    [root@server src]# ls /usr/local
    bin  games    lib    libexec  mysql-5.7.31-linux-glibc2.12-x86_64  share
    
    //创建软连接
    [root@server local]# ln -sv mysql-5.7.31-linux-glibc2.12-x86_64/ mysql
    'mysql' -> 'mysql-5.7.31-linux-glibc2.12-x86_64/'
    [root@server usr]# ll -d /usr/local/mysql*
    lrwxrwxrwx 1 root root   36 Oct 22 15:07 mysql -> mysql-5.7.31-linux-glibc2.12-x86_64/
    drwxr-xr-x 9 7161 31415 129 Jun  2 21:11 mysql-5.7.31-linux-glibc2.12-x86_64
    
    //修改修改目录/usr/local/mysql的属主属组
    [root@server usr]# cd local/
    [root@server local]# chown -R mysql.mysql mysql*
    [root@server local]# ll -d mysql*
    lrwxrwxrwx 1 mysql mysql  36 Oct 22 15:07 mysql -> mysql-5.7.31-linux-glibc2.12-x86_64/
    drwxr-xr-x 9 mysql mysql 129 Jun  2 21:11 mysql-5.7.31-linux-glibc2.12-x86_64
    
    //添加环境变量
    [root@server usr]# echo "export PATH=/usr/local/mysql/bin:$PATH" > /etc/profile.d/mysql.sh
    [root@server usr]# source /etc/profile.d/mysql.sh 
    [root@server usr]# echo $PATH
    /usr/local/mysql/bin:/usr/local/httpd/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
    
    //建立数据存放目录
    [root@server ~]# mkdir /data
    [root@server ~]# chown -R mysql.mysql /data/
    
    //初始化数据库
    [root@server local]# mysqld --initialize --user=mysql --datadir=/data
    2020-10-22T07:45:46.801098Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
    2020-10-22T07:45:47.932788Z 0 [Warning] InnoDB: New log files created, LSN=45790
    2020-10-22T07:45:47.968206Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
    2020-10-22T07:45:48.036912Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 9977fed3-143a-11eb-ac64-000c29340c82.
    2020-10-22T07:45:48.038426Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
    2020-10-22T07:45:48.386426Z 0 [Warning] CA certificate ca.pem is self signed.
    2020-10-22T07:45:48.746496Z 1 [Note] A temporary password is generated for root@localhost: rtG*bw3mq(*F  		
    //注意这里有一个临时密码rtG*bw3mq(*F,一会登录的时候要用,这个临时密码是随机生成的
    
    
    //生成配置文件
    [root@server ~]# vim /etc/my.cnf				#如果这个文件存在,请先备份再修改
    [mysqld]
    basedir = /usr/local/mysql
    datadir = /data
    socket = /tmp/mysql.sock
    port = 3306
    pid-file = /data/mysql.pid
    user = mysql
    skip-name-resolve
    
    //配置服务启动脚本
    [root@server ~]# cp -a /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysqld
    [root@server ~]# vim /etc/init.d/mysqld  			#修改文件中的这两个地方
    basedir=/usr/local/mysql
    datadir=/data
    
    //启动mysql服务,并设置为开机自动启动
    [root@server ~]# service mysqld start 
    Starting MySQL.Logging to '/data/server.err'.
    . SUCCESS! 
    [root@server ~]# ss -antl|grep 3306
    LISTEN   0         80                        *:3306                   *:*   
    [root@server ~]# chkconfig --add mysqld
    [root@server ~]# chkconfig --list
    
    Note: This output shows SysV services only and does not include native
          systemd services. SysV configuration data might be overridden by native
          systemd configuration.
    
          If you want to list systemd services use 'systemctl list-unit-files'.
          To see services enabled on particular target use
          'systemctl list-dependencies [target]'.
    
    httpd          	0:off	1:off	2:off	3:off	4:off	5:off	6:on
    mysqld         	0:off	1:off	2:on	3:on	4:on	5:on	6:off
    
    //使用临时密码登录mysql,然后修改密码
    [root@server ~]# mysql -uroot -p'rtG*bw3mq(*F'
    mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
    //如果出现这样的问题可以尝试通过yum安装ncurses-compat-libs这个库
    
    //设置新密码
    mysql> set password = password('redhat123+');
    Query OK, 0 rows affected, 1 warning (0.00 sec)
    

    MySQL配置文件

    • MySQL的配置文件为:/etc/my.cnf
    • 配置文件查找次序:如果存在多个配置文件且多个配置文件中均有设定,则最后找到的配置文件生效
    /etc/my.cnf --> /etc/mysql/my.cnf --> --default-extra-file=/PATH/TO/CONF_FILE --> ~/.my.cnf
    
    • MySQL配置文件常用参数
    参数 说明
    port = 3306 设置监听端口
    socket = 指定套接字文件位置
    basedir = 指定MySQL的安装路径
    datadir = 指定MySQL的数据存放路径
    pid-file = 指定进程ID文件存放路径
    user = mysql 指定MySQL以什么用户的身份提供服务
    skip-name-resolve 禁止MySQL对外部连接进行DNS解析
    使用这一选项可以消除MySQL进行DNS解析的时间。
    若开启该选项,则所有远程主机连接授权都要使用IP地址方式
    否则MySQL将无法正常处理连接请求

    MySQL数据库备份与恢复

    数据库备份方案

    • 全量备份
      • 全量备份就是指对某一个时间点上的所有数据或应用进行的一个完全拷贝。
      • 数据恢复快,但备份时间长
    • 增量备份
      • 增量备份是指在一次全备或上一次增量备份后的备份,以后每次的备份只需备份与前一次相比增加或者被修改的文件。这就意味着,第一次增量备份的对象是进行全备后所产生的增加和修改的文件,第二次增量备份的对象可以是上一次增备后增加和修改的文件,也可以是上一次全备后增加和修改的文件,如此类推。
      • 没有重复的备份数据,备份时间短,但恢复数据时必须按一定的顺序进行
    • 差异备份
      • 备份上一次的完全备份后发生变化的所有文件。差异备份是指在一次全备后到进行差异备份的这段时间内发生的增加或者修改的文件进行备份。
      • 在进行恢复时,我们只需对第一次全量备份和最后一次差异备份进行恢复。

    MySQL备份工具

    //mysqldump语法
      mysqldump [OPTIONS] database [tables]
      mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
      mysqldump [OPTIONS] --all-databases [OPTIONS]
    
    //常用OPTIONS
        -uUSERNAME      //指定数据库用户名
        -hHOST          //指定服务器主机,使用ip地址
        -pPASSWORD      //指定数据库用户的密码
        -P#             //指定数据库监听的端口
    
    • 备份cwt库中的employee_information表
    //每次对数据库进行操作时都要输入用户名和密码,这很繁琐,我们可以在家目录下新建一个.my.cnf文件并输入以下参数,实现不需要输入用户名和密码登录,要注意的是此方法仅适用于当前用户
    [root@server ~]# vim .my.cnf 
    
    [client]
    user = root
    password = redhat123+
    [root@server ~]# mysql					#无需输入用户和密码即可登录
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 6
    Server version: 5.7.31 MySQL Community Server (GPL)
    
    Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    mysql> 
    
    
    
    
    mysql> SHOW TABLES;
    +----------------------+
    | Tables_in_cwt        |
    +----------------------+
    | employee_information |
    +----------------------+
    
    mysql> SELECT * FROM employee_information;
    +------------+-------+------+
    | job_number | name  | age  |
    +------------+-------+------+
    |          1 | cwt   |   20 |
    |          2 | tom   |   25 |
    |          3 | jerry |   35 |
    +------------+-------+------+
    
    [root@server ~]# mysqldump cwt employee_information > backups/2020-10-22.sql
    [root@server ~]# ls
    bakeups
    [root@server ~]# ls bakeups/
    2020-10-22.sql
    
    • 备份一个数据库中的多张表
    mysql> SHOW TABLES;
    +----------------------+
    | Tables_in_cwt        |
    +----------------------+
    | employee_information |
    | student              |
    +----------------------+
    2 rows in set (0.00 sec)
    
    [root@server ~]# mysqldump cwt employee_information student > 20201022.sql
    [root@server ~]# ls
    20201022.sql
    
    • 备份多个数据库
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | cwt                |
    | linux_shell        |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
    [root@server ~]# mysqldump --databases cwt linux_shell > 20201022_databases.sql
    [root@server ~]# ls
    20201022_databases.sql  20201022.sql
    
    • 全量备份
    [root@server ~]# mysqldump --all-databases > all_database_20201022.sql
    [root@server ~]# ls
    20201022_databases.sql  20201022.sql  all_database_20201022.sql
    

    注: 即使做了全备,数据库中系统自带的数据库也不建议删除


    MySQL数据恢复

    //删除cwt库和linux_shell库
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | cwt                |
    | linux_shell        |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
    mysql> DROP DATABASE cwt;
    Query OK, 2 rows affected (0.00 sec)
    
    mysql> DROP DATABASE linux_shell;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
    //恢复数据库
    [root@server ~]# mysql < 20201022_databases.sql  			
    [root@server ~]# mysql -e 'SHOW DATABASES;'
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | cwt                |
    | linux_shell        |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
    //恢复表
    mysql> SHOW TABLES;      
    +----------------------+
    | Tables_in_cwt        |
    +----------------------+
    | employee_information |
    | student              |
    +----------------------+
    2 rows in set (0.00 sec)
    
    mysql> DROP TABLE student;       
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> DROP TABLE employee_information;
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> SHOW TABLES;
    Empty set (0.00 sec)
    
    mysql> source 20201022.sql               #这种方法恢复表时,要进入到指定的库中
    Query OK, 0 rows affected (0.00 sec)
    
    Query OK, 0 rows affected (0.00 sec)
    
    Query OK, 0 rows affected (0.00 sec)
    
    ...
    
    mysql> SHOW TABLES;
    +----------------------+
    | Tables_in_cwt        |
    +----------------------+
    | employee_information |
    | student              |
    +----------------------+
    
    [root@server ~]# mysql cwt < 20201022.sql			#此命令也可以恢复表,注意恢复时要指定恢复到那个数据库里面
    

    差异备份与恢复

    MySQL差异备份

    • 开启MySQL服务器的事务日志功能
    [root@server ~]# vim /etc/my.cnf  				
    [mysqld]
    basedir = /usr/local/mysql
    datadir = /data
    socket = /tmp/mysql.sock
    port = 3306
    pid-file = /data/mysql.pid
    user = mysql
    skip-name-resolve
    
    server-id = 9527                    #设置服务器标识符
    log-bin = mysql_bin					#开启事务日志功能
    
    [root@server ~]# service mysqld restart 
    Shutting down MySQL.. SUCCESS! 
    Starting MySQL. SUCCESS! 
    
    • 进行差异备份前要先进行全备
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | cwt                |
    | linux_shell        |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
    mysql> SHOW TABLES FROM cwt;
    +----------------------+
    | Tables_in_cwt        |
    +----------------------+
    | employee_information |
    | student              |
    +----------------------+
    2 rows in set (0.00 sec)
    
    mysql> SELECT * FROM cwt.employee_information;
    +------------+-------+------+
    | job_number | name  | age  |
    +------------+-------+------+
    |          1 | cwt   |   20 |
    |          2 | tom   |   25 |
    |          3 | jerry |   35 |
    +------------+-------+------+
    
    mysql> SELECT * FROM cwt.student;
    +----+------+------+
    | id | name | age  |
    +----+------+------+
    |  1 | xx   |   15 |
    +----+------+------+
    1 row in set (0.00 sec)
    
    //全备
    [root@server ~]# mysqldump --single-transaction --flush-logs --master-data=2 --all-databases --delete-master-logs > all_20201022.sql
    [root@server ~]# ls
    all_20201022.sql
    //选项解释
    --single-transaction
        该选项从服务器转储数据之前发出一个BEGIN SQL语句。它只适用于事务表,例如InnoDB和BDB,因为然后它将在发出BEGIN而没有阻塞任何应用程序时转储一致的数据库状态。
        当使用该选项时,应记住只有InnoDB表能以一致的状态被转储。例如,使用该选项时任何转储的MyISAM或HEAP表仍然可以更改状态。
    
    --flush-logs,-F
        开始转储前刷新MySQL服务器日志文件。该选项要求RELOAD权限。请注意如果结合--all--database(或-A)选项使用该选项,根据每个转储的数据库刷新日志。例外情况是当使用--lock-all-tables或--master-data的时候:在这种情况下,日志只刷新一次,在所有表被锁定后刷新。如果你想要同时转储和刷新日志,应使用--flush-logs连同--lock-all-tables或--master-data。
    
    --delete-master-logs
        在主复制服务器上,完成转储操作后删除二进制日志。该选项自动启用--master-data。
    
    • 进入数据库中修改内容
    mysql> INSERT student value(2,'cwt',21);
    Query OK, 1 row affected (0.00 sec)
    
    mysql> SELECT * FROM student;
    +----+------+------+
    | id | name | age  |
    +----+------+------+
    |  1 | xx   |   15 |
    |  2 | cwt  |   21 |
    +----+------+------+
    2 rows in set (0.00 sec)
    
    mysql> UPDATE employee_information set age = 40 where name = 'jerry';
    Query OK, 1 row affected (0.01 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    mysql> SELECT * FROM employee_information;
    +------------+-------+------+
    | job_number | name  | age  |
    +------------+-------+------+
    |          1 | cwt   |   20 |
    |          2 | tom   |   25 |
    |          3 | jerry |   40 |
    +------------+-------+------+
    3 rows in set (0.00 sec)
    

    MySQL差异备份恢复

    • 模拟误删数据
    [root@server ~]# mysql -e 'DROP DATABASE cwt;'
    [root@server ~]# mysql -e 'SHOW DATABASES;;'
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | linux_shell        |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
    • 刷新创建新的事物日志
    [root@server ~]# ll /data/mysql_bin*			#事务日志的位置在数据存放目录下
    -rw-r----- 1 mysql mysql 866 Oct 23 15:30 /data/mysql_bin.000002
    -rw-r----- 1 mysql mysql  19 Oct 23 15:05 /data/mysql_bin.index
    
    //刷新并创建新的事物日志
    [root@server ~]# mysqladmin flush-logs
    [root@server ~]# ll /data/mysql_bin*
    -rw-r----- 1 mysql mysql 913 Oct 23 15:34 /data/mysql_bin.000002
    -rw-r----- 1 mysql mysql 154 Oct 23 15:34 /data/mysql_bin.000003
    -rw-r----- 1 mysql mysql  38 Oct 23 15:34 /data/mysql_bin.index
    
    • 首先恢复全量备份
    [root@server ~]# mysql < all_20201022.sql 
    [root@server ~]# mysql -e 'SHOW DATABASES;'
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | cwt                |
    | linux_shell        |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    [root@server ~]# mysql -e 'SHOW TABLES FROM cwt;'
    +----------------------+
    | Tables_in_cwt        |
    +----------------------+
    | employee_information |
    | student              |
    +----------------------+
    [root@server ~]# mysql -e 'SELECT * FROM cwt.student;'
    +----+------+------+
    | id | name | age  |
    +----+------+------+
    |  1 | xx   |   15 |
    +----+------+------+
    [root@server ~]# mysql -e 'SELECT * FROM cwt.employee_information;'
    +------------+-------+------+
    | job_number | name  | age  |
    +------------+-------+------+
    |          1 | cwt   |   20 |
    |          2 | tom   |   25 |
    |          3 | jerry |   35 |
    +------------+-------+------+
    
    • 恢复差异备份
    [root@server ~]# ll /data/mysql_bin*
    -rw-r----- 1 mysql mysql    913 Oct 23 15:34 /data/mysql_bin.000002
    -rw-r----- 1 mysql mysql 843552 Oct 23 15:37 /data/mysql_bin.000003
    -rw-r----- 1 mysql mysql     38 Oct 23 15:34 /data/mysql_bin.index
    
    //进入数据库检查误删数据的位置在什么地方
    mysql> SHOW BINLOG EVENTS IN 'mysql_bin.000002'\G
    
    ......
    
    *************************** 14. row ***************************
       Log_name: mysql_bin.000002
            Pos: 777					#开始的位置				
     Event_type: Query
      Server_id: 9527
    End_log_pos: 866					#结束的位置
           Info: DROP DATABASE cwt			
    *************************** 15. row ***************************
       Log_name: mysql_bin.000002
            Pos: 866
     Event_type: Rotate
      Server_id: 9527
    End_log_pos: 913
           Info: mysql_bin.000003;pos=4
    15 rows in set (0.00 sec)
    
    //我们只需要使用mysqlbinlog命令恢复到删除表之前的位置即可恢复数据
    [root@server ~]# mysqlbinlog --stop-position=777 /data/mysql_bin.000002 | mysql
    //选项解释
    --stop-position=N
        从二进制日志中第1个位置开始读取事件,等于和大于N时的事件起停止读。
        
        
    [root@server ~]# mysql -e 'SHOW DATABASES;'
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | cwt                |
    | linux_shell        |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    [root@server ~]# mysql -e 'SELECT * FROM cwt.student;'
    +----+------+------+
    | id | name | age  |
    +----+------+------+
    |  1 | xx   |   15 |
    |  2 | cwt  |   21 |
    +----+------+------+
    [root@server ~]# mysql -e 'SELECT * FROM cwt.employee_information;'
    +------------+-------+------+
    | job_number | name  | age  |
    +------------+-------+------+
    |          1 | cwt   |   20 |
    |          2 | tom   |   25 |
    |          3 | jerry |   40 |
    +------------+-------+------+
    //这样数据就全部恢复了
    

    注意: binlog是二进制文件,普通文件查看器cat、more、vim等都无法打开,必须使用自带的mysqlbinlog命令查看。

    展开全文
  • SyncBackPro是一款十分好用的数据恢复备份与同步软件,它可用于在硬盘、光盘、云备份服务器、U盘、FTP、zip压缩文件等之间进行同步操作,与同类软件相比SyncBackPro拥有更快的备份、更快的同步和更快的压缩,为...

    SyncBackPro是一款十分好用的数据恢复、备份与同步软件,它可用于在硬盘、光盘、云备份服务器、U盘、FTP、zip压缩文件等之间进行同步操作,与同类软件相比SyncBackPro拥有更快的备份、更快的同步和更快的压缩,为高级用户提供了大量的高级配置选项,甚至可在同步过程中执行脚本程序,您可以设置需要同步的项目规则,选择同步的方式,就能将电脑的数据发送到指定的设备上。

    2BrightSparks SyncBackPro 9.0.1.1中文版+注册机文件下载地址

    点此进入资源下载页面获取该资源

    数据恢复、备份与同步软件2BrightSparks SyncBackPro 9.0.1.1中文版的安装与注册激活教程

    下载<2BrightSparks SyncBackPro 9.0.1.1中文版+注册机文件>压缩包,解压缩后双击里面的SyncBackPro64_Setup.exe开始安装,

    勾选“我接受协议”,点击“下一步”,

    点击“下一步”,

    选择安装路径,建议保持默认,点击“下一步”,

    安装完毕,点击“完成”后,会提示我们注册激活,

    在压缩包的Crack文件夹下打开注册机即可生成序列号,输入后点击“确定”,

    这一步点击“否”即可。

    至此,数据恢复、备份与同步软件2BrightSparks SyncBackPro 9.0.1.1中文版的下载、安装与注册激活教程介绍完毕。

    展开全文
  • 树莓派系统的备份与恢复 1、备份前准备 读卡器 装了系统的TF卡 win32DiskImager软件 2、使用win32DiskImager备份 创建一个空白的.img后缀的文件,例如:respberry.img 第一步;选择含系统的TF卡 第二步:选择下载好...

    树莓派系统的备份与恢复

    1、备份前准备

    读卡器

    装了系统的TF卡

    win32DiskImager软件

    2、使用win32DiskImager备份

    创建一个空白的.img后缀的文件,例如:respberry.img

    第一步;选择含系统的TF卡

    第二步:选择下载好的镜像文件

    第三步:点击读取(read)

    在这里插入图片描述

    使用win32DiskImager备份属于全盘备份(无压缩)

    备份时其那晚不要点击写入(write),否则TF卡中的系统和文件将不覆存在

    3、 使用win32DiskImager恢复

    第一步:选择新的TF卡

    第二步;选择之前备份的镜像文件

    一步:选择新的TF卡

    第二步;选择之前备份的镜像文件

    第三步:点击“写入”

    展开全文
  • Ubuntu全盘备份与恢复

    2019-11-13 10:03:59
    重装系统虽然简单,但是各种软件/环境重新下载、配置相当占用时间,因此有必要对系统同进行备份,以避免将来连哭的地方都找不到。本教程已经由JK小僧在计算机上亲自实践,可以恢复之前Ubuntu系统上的各类软件和环境...

    初学者在使用Ubuntu这类Linux操作系统时,常常会由于不当操作导致系统崩溃,重装系统是难免的事情。重装系统虽然简单,但是各种软件/环境重新下载、配置相当占用时间,因此有必要对系统同进行备份,以避免将来连哭的地方都找不到。本教程已经由JK小僧在计算机上亲自实践,可以恢复之前Ubuntu系统上的各类软件和环境配置,方法简单,值得推广:


    一、备份系统

    使用TAR。和Windows不同,Linux不会限制root访问任何东西,你可以把分区上的所有东西都扔到一个TAR文件里去

    1. 打开一个终端,并运行 sudo su(回车后要求输入密码);

    2. 继续在终端中输入以下指令,进入系统根目录:
      $ cd /

    3. 开始备份系统,在终端中输入:
    $ tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys --exclude=/media /
    • 1

    让我们来简单看一下这个命令:

    • ‘tar’ 是用来备份的程序
    • c - 新建一个备份文档
    • v - 详细模式, tar程序将在屏幕上实时输出所有信息。
    • p - 保存许可,并应用到所有文件。
    • z - 采用‘gzip’压缩备份文件,以减小备份文件体积。
    • f - 说明备份文件存放的路径, Ubuntu.tgz 是本例子中备份文件名。
    • “/”是我们要备份的目录,在这里是整个文件系统。
    • 在档案文件名“backup.tgz”和要备份的目录名“/”之间给出了备份时必须排除在外的目录。有些目录是无用的,例如“/proc”、“/lost+ found”、“/sys”。当然,“backup.tgz”这个档案文件本身必须排除在外,否则你可能会得到一些超出常理的结果。如果不把“/mnt”排除在外,那么挂载在“/mnt”上的其它分区也会被备份。另外需要确认一下“/media”上没有挂载任何东西(例如光盘、移动硬盘),如果有挂载东西, 必须把“/media”也排除在外.
    • 备份完成后,在文件系统的根目录将生成一个名为“backup.tgz”的文件,它的尺寸有可能非常大。现在你可以把它烧录到DVD上或者放到你认为安全的地方去。
      在备份命令结束时你可能会看到这样一个提示:’tar: Error exit delayed from previous errors’,多数情况下你可以忽略它。

    二、恢复系统

    1. 如果原来的Ubuntu系统已经崩溃,无法进入。则可以使用Ubuntu安装U盘(live USB)进入试用Ubuntu界面。

    2. 切换到root用户,找到之前Ubuntu系统的根目录所在磁盘分区(一般电脑上的磁盘分区(假设分区名称为sdaX)均可以在当前Ubuntu系统的根目录下的media目录下(即/media)找到。目录通常为当前根目录下 cd /media/磁盘名称/分区名称)。进入该分区,输入以下指令来删除该根目录下的所有文件:
      $ sudo rm -rf /media/磁盘名称/分区名称*

    3. 将备份文件”backup.tgz”拷入该分区;
      $ sudo cp -i backup.tgz /media/磁盘名/分区名sdaX

    4. 进入分区并将压缩文件解压缩,参数x是告诉tar程序解压缩备份文件。
      $ sudo tar xvpfz backup.tgz

    5. 重新创建那些在备份时被排除在外的目录;
      $ sudo mkdir proc lost+found mnt sys media
      或者这样:
      mkdir proc
      mkdir lost+found
      mkdir mnt
      mkdir sys

    当你重启电脑,你会发现一切东西恢复到你创建备份时的样子了!

    展开全文
  • Ubuntu全盘备份与恢复,亲自总结,实测可靠

    万次阅读 多人点赞 2017-10-13 16:25:28
    Ubuntu系统全盘备份与恢复,亲自总结,实测可靠初学者在使用Ubuntu这类Linux操作系统时,常常会由于不当操作导致系统崩溃,重装系统是难免的事情。重装系统虽然简单,但是各种软件/环境重新下载、配置相当占用时间,...
  • 在VMware虚拟机中win10虚拟系统中完成win10系统的备份以及恢复 二、实验步骤 完成此次实验我们可以分为以下几个步骤: 1.安装VMware软件 2.在VMware软件中创建虚拟机并完成win10系统的安装 3.在虚拟win10系统中完成...
  • 电脑端需要安装TFTP软件,请自行找度娘到官网下载! 2..备份数据处理(相同的配置文件做备份处理,下次只需修改远程IP地址即可) Switch>en//进入特权模式命令 Switch# Switch#copy running-config TFTP //...
  • MySQL Administrator 是一个专门用于管理 My SQL 4.X 和 5.X My SQL数据库的软件,可以使用这个软件备份My SQL数据库,还原My SQL数据库。注:如果你的数据库是 MS SQL 2000 数据库,请参考这里,使用 MS SQL 2000 ...
  • 备份与恢复系统驱动

    2008-02-17 10:53:20
    我想大家操作系统都安装过吧,是不是有一个同感,每次装好系统后,装驱动很麻烦。我今天就给大家推荐一个小工具...它是绿色版的,解压之后就可以用了,在绿色软件联盟就可以下载到。我下面就介绍一下它的用法:1.打...
  • 小编推荐分享下载】ABB YASKAWA FANUC KUKA机器人资料分享下载【238G西门子PLC学习视频+软件】分享下载】机器人仿真软件 ABB机器人数据备份的对象是所有正在系统内存运行的RAPID程序和系统参数。当机器人系统出现...
  • 摘要:Ubuntu系统全盘备份与恢复,亲自总结,实测可靠初学者在使用Ubuntu这类Linux操作系统时,常常会由于不当操作导致系统崩溃,重装系统是难免的事情。重装系统虽然简单,但是各种软件/环境重新下载、配置相当占用时间,...
  • 安装及备份恢复实现 安装:其最新版的软件可从 http://www.percona.com/software/percona-xtrabackup/ 获得。本文基于CentOS6.x的系统,因此,直接下载相应版本的rpm包安装即可,这里不再演示其过程。 1 yum -y ...
  • 最近在做一个备份软件,刚刚把短信的备份与恢复做完。短信的备份主要是对数据库mmssms.db的sms表进行数据的导出,当然这里是跨应用的,所以要使用 contendResolver来访问,最后把数据导出成xml文件。恢复时再对xml...
  • --下载软件 https://github.com/ossc-db/pg_rman --安装 unzip pg_rman-master.zip --下载安装postgresql93-libs http://yum.postgresql.org/9.3/redhat/rhel-6.4-x86_64/ [root@rudy tools]# rp...
  • 在mysql中备份与恢复数据库会使用到mysqldump,database需要备份的数据库,要备份多个数据库需要用””包括起来,每个数据库中间用空格分开,相似软件版本说明软件地址Aliyun RDS Backup UnTar 工具,请把 RDS 备份文件...
  • 2.可支持FTP、网盘、局域网及本机各种存储器之间的备份与同步 3.可以对数据库等文件实施热备份,可以读取正在被其它系统独占打开的文件 4.可以在备份或同步的同时,对文件进行加密,有力地保障了数据的安全 5....
  • 2、下载ghost8.0程序,大小1.362K,各大软件站均有免费下载,推荐下载后将它复制到一张空白软盘上,如果你的硬盘上有FAT32或FAT文件系统格式的分区,也可把它放在该分区的根目录,便于DOS下读取这个命令。  3、为了....
  • 用Ghost8.0进行分区备份与恢复详细图解 一、准备工作 1、ghost是著名的备份工具,在DOS下运行,因些需准备DOS启动盘一张(如98启动盘),(DOS启动盘制作点这里参考)。 2、下载ghost8.0程序,大小1.362K,各大...
  • 经常有朋友问到关于ghost备份与还原的问题,特发此贴,以方便朋友们使用。  一、准备工作  1、ghost是著名的备份工具,在DOS下运行,因些需准备DOS启动盘一张(如98启动盘)  2、下载ghost8.0程序,大小1.362K,...
  • 年底了,需把所有网络设备做一次备份。公司使用的设备大部分是H3C的。这里来简单记录一下操作方法。 h3c的设备备份方法主要有两种,一是通过web页面... 1、建好tftp server ,直接下载一个tftp server 软件,同时保...
  • MySQL Administrator 是一个专门用于管理 My SQL 4.X 和 5.X My SQL数据库的软件,可以使用这个软件备份My SQL数据库,还原My SQL数据库。注:如果你的数据库是 MS SQL 2000 数据库,请参考这里,使用 MS SQL 2000 ...
  • 安装启动和连接数据库,修改数据库的管理密码管理权限数据库的备份与恢复,全量备份,增量备份,物理备份,逻辑备份数据库的高可用部署:集群数据库的优化:数据库操作系统硬件层的优化,数据库软件配置层面的优化,...
  • 极速还原:Ghost8.0分区备份与恢复详细图解http://www.sina.com.cn 2005年09月26日 12:05 天极yesky 经常有朋友问到关于ghost备份与还原的问题,特发此贴,以方便朋友们使用。 一、准备工作 1、ghost是著名的备份...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 669
精华内容 267
关键字:

下载备份与恢复软件