
正文
linux导出数据表命令 linux导出数据库命令
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
linux命令,mysql批量导出多个数据库。单个的是mysqldump -uroot - p 库名 > /***/***.sql;
MySql的备份命令
myisam引擎
#mysqldump -uroot -pxxx -A -B -F --master-data=2 -x --events /opt/name.sql.gz
innodb引擎
#mysqldump -uroot -pxxx -A -B -F --master-data=2 --events --single-transaction | gzip/opt/name.sql.gz
--master-data 这个参数在建立slave数据库的时候会用到,当这个参数的值为1的时候,mysqldump出来的文件就会包括CHANGE MASTER TO这个语句,CHANGE MASTER TO后面紧接着就是file和position的记录,file和position记录的位置就是slave从master端复制文件的起始位置。默认情况下这个值是1 当这个值是2的时候,chang master to也是会写到dump文件里面去的,但是不会有上面那个作用了 --master-data=1 (--master-data=2注释) 表示在dump过程中记录主库的binlog和pos点,并在dump文件中不注释掉这一行,即恢复时会执行; -F 切割binlog参数
-A 备份所有库 -B, --databases 备份数据时使用-B参数,会在备份数据中增加建库及use库的语句 使用-B参数,后面可以接多个库,否则只能有一个库,之后的都被认为是表
--single-transaction 适合innodb事务数据库备份(可代替锁表) 设置事务的隔离级别为可重复读,即REPEATABLE READ,这样能保证在一个事务中所有相同的查询读取到同样的数据,也就大概保证了在dump期间,如果其他innodb引擎的线程修改了表的数据并提交,对该dump线程的数据并无影响. :InnoDB 表在备份时,通常启用选项 --single-transaction 来保证备份的一致性,实际上它的工作原理是设定本次会话的隔离级别为:REPEATABLE READ,以确保本次会话(dump)时,不会看到其他会话已经提交了的数据。
-x,--lock-all-tables Locks all tables across all databases. This is achieved by taking a global read lock for the duration of thewhole dump. Automatically turns --single-transaction and --lock-tables off.
-l, --lock-tables Lock all tables for read.
相关问答
Q1: 如何在linux环境导出oracle数据库
步骤如下:
一、编写备份数据库的shell
1、创建保存shell文件的文件夹,
2、文件内容为:
#!/bin/sh
PATH=$PATH:$HOME/bin
export PATH
ORACLE_BASE=/u01/app/oracle
export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_HOME
ORACLE_SID=HRDB
export ORACLE_SID
PATH=/usr/sbin:$PATH
PATH=$ORACLE_HOME/bin:$PATH
export PATH
exp fact/fact file=/backup/fact`date +%y%m%d`.dmp
log=/backup/factlog`date +%y%m%d`.log
shell文件编写完毕
一、运行以上的shell文件
看是否能生成备份的.dmp文件,如果能则表示shell文件编写成功
二、然后在此shell
文件的所在终端输入命令,将此文件授权让root用户可以执行:
三、命令为:chmod +x backup.sh
四、然后到root终端编写定时备份的语句
五、语句为:crontab –e
六、输入i
七、输入10 17 ,,,/home/backupscript/backup.sh
八、按下esc建,输入:wq 退出并保存即可。
Q2: linux下oracle导出dmp的命令
su -oracle
#输入密码
exp 用户名/密码@IP/sid file=导出路径\要导出的表.dmp tables=要导出的表
Q3: linux下oracle命令导出表中部分字段
和linux无关,用exp命令就可以实现
导出一个表中的部分数据,使用QUERY参数,如下
导出select * from test where object_id50000这个条件中的数据
exp charsi/charsi@testdb tables=(TEST) query="'where object_id50000'" file=aaa.dmp log=aaa.log
其他参数含义:
GRANTS:指定是否导出对象的授权信息,默认参数为Y,即默认导出
INDEXES:指定是否导出表的索引,默认为Y
CONSTRAINTS:指定是否导出标的约束,默认为Y
TRIGGERS:指定是否导出与表相关的触发器,默认为Y
FILESIZE:如果生成的dump文件超过指定的,需要使用FILE参数指定多个文件
BUFFER:用来指定执行导出时,处理数据所用的缓存区大小,以字节为单位.这个参数变相用来控制导出时记录数组单次最大能加载的记录数.
RECORDLENGTH:该参数用来指定Export的I/O buffer,以字节为单位,最大不超过65535
Q4: linux备份数据库怎么用expdp命令导出2017-12-31之前的数据
可以的。 exp支持条件导出QUERY 属性可以支持你的想法。 exp system/manager@TestDB file=E:/sampleDB.dmp tables=(tableA) query=' where creatime
Q5: 如何从linux 里导出oracle 数据库,命令是什么,请举例
操作顺序:
1、打开本地终端,输入telnet命令:
telnet 服务器ip
输入用户名 密码 登陆成功
2、转到oracle用户下,输入:
su - oracle
exp
根据Oracle的exp命令提供的到处向导,导出用户需要的数据到dmp文件中 myxxxoutxxx.dmp
3、接下来是讲这个dmp文件传到本地
两种方式
1、如果服务器端开启了ftpd 或者 sshd ,可以从本地连接过去,把dmp文件下载到本地
重新打开一个本地终端
ftp 服务器ip
输入用户名 密码 登陆成功
cd dmp文件目录的相对路径
get myxxxoutxxx.dmp
2、如果本地服务器开启了相关服务 可以从服务器端上传dmp文件到本地
cd dmp文件目录的路径
ftp 服务器ip
输入用户名 密码 登陆成功
put myxxxoutxxx.dmp
最后就是本地库的导入了
在终端中输入 imp 根据向导一步一步设置导入
或者用开发工具帮助导入
关于linux导出数据表命令和linux导出数据库命令的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






