• 命令:impdp: Impdpwsdt/wsdt@testdb table_exitst_actio=replace directory=DATA_PUMP_DIR dumpfile=wsdt112backup20161125.expdp schemmas=wsdt remap_tablespace=BPEDB :OLSH_DB:BPEDB 详细步骤见底下: ...

    命令:impdp:

    Impdpwsdt/wsdt@testdb

    table_exitst_actio=replace

    directory=DATA_PUMP_DIR

    dumpfile=wsdt112backup20161125.expdp

    schemmas=wsdt

    remap_tablespace=BPEDB :OLSH_DB:BPEDB

    详细步骤见底下:


    1)wsdt/wsdt:数据库用户名/密码

    2)testdb:实例名称

    1.先找在服务器上找到Oracle的安装目录:

    打开Linux命令行界面:

    切换为Oracle用户: su –oracle

    以sysdba方式来打开sqlplus:sqlplus“/as sysdba”

    查看表空间的放置位置,这样就可以找到Oracle的安装目录了:

    Selectname from v$datafile

    找到配置文件:tnsnames.ora

    相对于我的Oracle安装路径来说,命令

    cd/app/oracle/11g/network/admin –》进入

    cattansnames.ora->查看文件

    Service_name= testdb : testdb 就是数据库实例名称;一般都是arcl

    3)table_exists_action=replace

    当设置该选项为SKIP时,导入作业会跳过已存在表处理下一个对象;

    APPEND:会追加数据,为TRUNCATE时,导入作业会截断表,然后 为其追加新数据;

    REPLACE:导入作业会删除已存在表,重建表并追加数据,注意,

    TRUNCATE:选项不适用与簇表和 NETWORK_LINK选项;

    4) directory=DIR_DP:目录名称

    expadp导出或impadp导入数据文件存放的路径:

    创建目录必须具有DBA角色或者赋予了CREATE ANYDIRECTORY权限

    如果普通用户被赋予了CREATE ANY DIRECTORY权限,那么用户就自动具备目录的READ和WRITE权限。注意:CREATE DIRECTORY语句不会创建磁盘的真实目录,如果目录是无效的,数据泵作业会报错:
    查看目录:打开sqlplus 执行

    Select directory_name,grantee,privilege

    From user_tab_privs t, all_directories d

    where t.table_name=d.directory_name ;

    查询出可以使用的目录名称

    5)dumpfile=wsdt112backup20161125.expdp:要导入的.expdp文件

    该文件必须放在对应逻辑目录的路径里面去

    6)schemas=wsdt:

    表空间的名称

     

     

    7)remap_tablespace=OLSH_DB:BPEDB

    将源表空间的所有对象导入到目标表空间中:
    展开全文
  • 数据库备份恢复 对于绝大多数企业来讲,失去数据就相当于失去商机、失去产品、失去客户,甚至会造成公司倒闭,那么,在所有的数据中,最核心的数据又是哪些呢?这恐怕要属数据库中的数据了,当然,并不是说其他...

    数据库备份与恢复
    对于绝大多数企业来讲,失去数据就相当于失去商机、失去产品、失去客户,甚至会造成公司倒闭,那么,在所有的数据中,最核心的数据又是哪些呢?这恐怕要属数据库中的数据了,当然,并不是说其他数据不重要,只是这一部分更具代表性。既然数据库中的数据地位这么高,那么数据库备份与恢复的重要性就不言而喻了。
    1、mysql数据库备份
    基本备份输入命令:
    mysqldump -u root -p stumysql1>/home/bak/2019-04-11/stumysql1.sql
    Enter password: song123
    此时,已成功将数据库stumysql1备份到/home/bak/2019-04-11目录下的test.sql中.
    加-B参数备份的实践:
    下面以备份stumysql1库时加-B参数,备份的文件中会比不加-B多创建库的语句,
    在备份的时候最好加上-B,以下例进行讲解。
    备份命令如下
    mysqldump -B -u root -pstumysql1>/home/bak/2019-04-11/stumysql.sql
    Enter password: song123
    指定压缩命令gzip压缩备份stumysql1数据库,命令如下:
    mysqldump -B -u root -pstumysql1|gzip>/home/mysql_bak_B.sql.gz
    #<==注意压缩命令前要加管道。

    Linux增量备份
    2、mysql数据库恢复
    使用mysql命令
    mysql -u root -p test < /home/bak/2019-04-11/stumysql1.sql
    Enter password:song123
    使用source命令恢复数据库的说明
    进入mysql数据库控制台后,切换到想恢复数据的数据库。
    mysql>use 数据库
    接着,使用source命令进行恢复,后面接.sql文件,即上文使用mysqldump备份的文件或者人工编辑的SQL语句文件:
    mysql>source /home/stumysql.sql
    这个stumysql.sql文件是系统的相对路径,默认是登录MySQL前的系统路径,也可以使用完整的路径。
    解压压缩包
    gzip -d /home/mysql_bak_B.sql.gz
    再用以上方式还原即可

    展开全文
  • 一、备份数据 1.切换到postgres用户 $ sudo su - postgres 2.备份数据库 (1).备份数据库内容(不会包含创建数据库语句) $ pg_dump db_name &amp;amp;amp;gt;backup_file_name.sql (2)....

    点击查看postgresql官方文档

    一、备份

    1.切换到postgres用户

    $ sudo su - postgres
    

    2.根据需求不同,选取不同的备份方式
    (1).备份数据库(包含创建数据库)

    $ pg_dump -C db_name > db_bak.sql
    

    (2).备份数据库内容(不包含创建数据库)

    $ pg_dump db_name > db_content_bak.sql
    

    (3).备份schema(命名空间/模式)和数据(包含创建schema)

    $ pg_dump -n "schema_name" db_name > schema_bak.sql
    

    (4).备份表和数据(包含建表)

    $ pg_dump -t "schema_name.table_name" db_name > table_bak.sql
    

    (5).备份表内数据(不包建表语句)

    $ pg_dump -a -t "schema_name.table_name" db_name > table_content_bak.sql
    

    二、恢复

    1.切换到postgres用户

    $ sudo su - postgres
    

    2.恢复数据
    (1).恢复数据库及其内容(数据库不存在)

    $ psql -e < db_bak.sql
    

    (2).恢复数据库内容(数据库必须已存在,且库中不存在备份文件中将要的创建的对象)

    psql -e db_name < bak.sql
    

    3.免去交互输入密码

    PGPASSWORD=123456 psql -U username -e db_name < bak.sql
    
    展开全文
  • 数据库的作用是什么? 数据库,见名知意,也就是存放数据的仓库,就像你的电话本一样,存放着联系人的数据,而数据库存储的数据比电话本多的多了,并且是在服务器上的数据存储,我们...数据库备份 为什么要做...

    数据库的作用是什么?

    数据库,见名知意,也就是存放数据的仓库,就像你的电话本一样,存放着联系人的数据,而数据库存储的数据比电话本多的多了,并且是在服务器上的数据存储,我们平时玩的游戏每个账号的等级,装备什么的,各种数据全都是在数据库中存储着,我们登录账号的实质就是访问数据库,所以这个数据很重要,当服务器出问题坏掉了,我们的数据库中的数据可不能丢失,这也就需要我们去做

    数据库的备份

    为什么要做数据库的备份?这个问题显得很捞,这么重要的东西,怎么能只有这一份呢?

    模拟工作环境中数据库的备份,在工作环境中我们的服务器可不是说停就停的,所以我们要做的就是在线备份,在不停服务器的情况下完成数据库的备份,也就是所说的热备。

    需要机器,两台,一台服务器,一台作远程存储的机器

    服务器 远程存储
    172.18.254.136 172.18.154.103

    服务器端设置

    1,安装mariadb数据库,并启动服务

    [root@localhost张大帅哥 ~]# yum install -y mariadb-server
    [root@localhost张大帅哥 ~]# systemctl start mariadb

    2,编辑主配置文件

    [root@localhost张大帅哥 ~]# vim /etc/my.cnf
    

    添加一行配置来启动二进制日志,在这里我把数据文件的目录也改了,都在同一个目录下,一会备份了好去找。默认在/var/lib/mysql下。

    [mysqld]
    datadir=/mariadb/data
    log_bin=/mariadb/logbin/log-bin

    这里log_bin=表示开启二进制日志并且日志文件存放在/mariadb/logbin下,格式为log-bin.0000X

    4,创建所需的两个目录并设置所属人所属组

    [root@localhost张大帅哥 ~]# mkdir -p /mariadb/{data,logbin}
    [root@localhost张大帅哥 ~]# chown -R mysql.mysql /mariadb/
    

    5,在数据库中增加两张表

    MariaDB [(none)]> create database db1;
    Query OK, 1 row affected (0.00 sec)
    
    MariaDB [(none)]> create database db2;
    Query OK, 1 row affected (0.00 sec)
    

    6,备份数据

    [root@localhost data]# mysqldump -A -F --single-transaction --master-data=2 > /mariadb/bakup/fullbak_$(date +%F_%T).sql
    

    执行这条命令生成备份文件并导至bakup目录下设置名字

    7,生成新数据

    因为是模拟生产环境,所以数据库中可能会一直有数据的更改,所以,我们这时候再对数据库做一下更改

    MariaDB [(none)]> use db1;
    Database changed
    MariaDB [db1]> create table t1;
    ERROR 1113 (42000): A table must have at least 1 column
    MariaDB [db1]> create table t1(id tinyint);
    Query OK, 0 rows affected (0.01 sec)
    

    我们在数据库db1中创建了一张t1表

    8,查看产生的新数据是从哪个二进制文件开始的

     [root@localhost张大帅哥 ~]# vim /mariadb/bakup/fullbak_2018-10-11_07\:01\:16.sql
    -- CHANGE MASTER TO MASTER_LOG_FILE='log-bin.000004', MASTER_LOG_POS=245;
    

    由文件中的这一行可以看出我们的备份这一刻的数据是记录在了04的二进制日志文件中,所以我们往远程备份的时候要把这一个二进制文件也备份过去

    9,备份到远程

    [root@localhost张大帅哥 ~]# scp /mariadb/bakup/fullbak_2018-10-11_07\:01\:16.sql /mariadb/logbin/log-bin.000004 root@172.18.254.103:/root/mysqlbakup
    

    10,如果服务器出问题,数据库数据坏了,我们就可以用这两个文件来恢复,数据文件可以直接导入,二进制文件需要经过以下转换才能导入

    [root@localhost张大帅哥 ~]# mysqlbinlog /root/mysqlbakup/log-bin.000004 > /root/bin.sql
    
    

    这样把两个sql文件导入数据库即可。

     

    至此,我们模拟数据库的备份与恢复就完成了,生产环境中我们可以写计划任务来每天备份数据库文件,这种热备不用停机即可完成备份。还有一个基于lvm快照的几乎热备的备份功能,在此篇博文中不再介绍,如需了解,请留言。

     

    展开全文
  • mysqldump -h127.0.0.1 -p3306 -u root -p password --events --ignore-table=mysql.events --all-databases > /all_db.sql 一句代码搞定 恢复所有库可看下一篇文章
    mysqldump -h127.0.0.1 -p3306 -u root -p password --events --ignore-table=mysql.events  --all-databases > /all_db.sql

    一句代码搞定

     

    恢复所有库可看下一篇文章

    展开全文
  • Linux 下MySQL备份

    2019-10-31 17:10:38
    Linux下MySQL数据库备份恢复 Linux下MySQL数据库有逻辑备份和物理备份,也可以分为完全备份、部分备份。 ·完全备份是指备份整个数据集(即整个数据库) ·部分备份是指备份部分数据集(只备份一个表) 逻辑...
  • 1、切换到oracle用户:#su - oracle  1.1、设置临时环境变量:$ export ORACLE_SID=sid(实例名注意区分大小写) ... 2.1、查询当前数据库实例:select instance_name from v$instance;  ...
  • 本来是打算点复制的,不小心点成删除了,结果navicat直接删除所有表了,都不给机会提示是否删除的,不过好在我写了shell备份数据库的脚本,每天凌晨三点给我备份一次,所以直接通过备份的脚本来恢复数据库。...
  • 数据库备份的作用 对于绝大多数企业来讲,失去数据就相当于失去商机、失去产品、失去客户,甚至会造成公司倒闭,同时我们的数据丢失会导致很多的不便,数据库备份会大大的提高数据的安全性和可用性。 一、MySQL...
  • 最近要写mysql数据库备份,把自己所得记录下来,防止以后忘了,哈哈哈哈 (注 这是远程备份,备份到指定服务器) 使用环境   centos 7  mysql 5.7   远程连接主机免密码登录 ,  在运行服务器上执行 ssh-...
  •  备份数据库:  1)cd到mongodb的bin目录下  例如: cd /usr/local/mongodb/bin  2) $ mongodump -h 数据库所在pc的ip --port 端口号 -u 用户名 -p 密码 -d 数据库名称 -o 导出路径
  • 我们会向您介绍如何构建数据库和应用程序,怎样周期性创建数据库备份的方法,并在需要的时候修复它们。  一、引言  本文将为读者详解在linux环境中快速玩转Postgres Plus Standard Server或者Postgres Plus ...
  • 这里写自定义目录标题MongoDb数据库备份还原数据备份数据还原注意事项 MongoDb数据库备份还原 数据库迁移,可视化工具NoSQLBooster for MongoDB 付费版才具备数据导入功能.代价太高,索性采取命令行 数据备份 备份命令...
  • 很多用户都有过丢失宝贵数据的经历,随着大量的数据被存入到MySQL数据库中,再加上错误地使用DROP DATABASE命令、系统崩溃或...所以对MySQL数据库进行备份,以备在出现意外时及时进行恢复是非常必要的。 一、 使用m
  • Linux下DB2数据库备份及还原 背景: 放数据库DB2的服务器是windows server操作系统,又在上面安装了Linux虚拟机,然后在虚拟机上安装了DB2。应用服务器上装的是Tomcat。 要求: 在本地电脑上备份...
  • Linux备份mysql数据库

    2020-01-17 12:00:29
    The mysqldump client utility performs logical backups, producing a set of SQL statements that can be executed to reproduce the original database object definitions and table data....
  • 数据备份mysqldump -u username -p dbname table1 table2 > Backups.sql其中: dbname参数表示数据库的名称; table1和table2参数表示需要备份的表的名称,为空则整个数据库备份; Backups.sql参数表设计备份文件...
  • 在可视化界面上很方便对数据库进行备份恢复,那么在如何使用linux命令对数据库进行备份恢复呢?首先需要我们退出mysql,然后按如下步骤操作。1、从linux命令行中输入sudo -s 进入超级管理员模式;2、进入mysql...
  • 冷备是把数据库服务,比如MySQL,Oracle停下来,然后使用拷贝、打包或者压缩命令对数据目录进行备份;那么我们很容易想到热备就是在MySQL或者其他数据库服务在运行的情况下进行备份。但是,这里存在一个问题,因为...
  • 下面我们来了解一下MySQL常见的有三种备份恢复方式: 1、利用Mysqldump+二进制日志实现备份 2、利用LVM快照+二进制日志实现备份 3、使用Xtrabackup备份 一:实验环境介绍: 系统介绍:CentOS6.4
1 2 3 4 5 ... 20
收藏数 58,416
精华内容 23,366
关键字:

linux如何备份恢复数据库