mysql source命令如何把日志记录到文件里面
问题描述
mysql source命令如何把日志记录到文件里面
在msyql数据库备份过程中,使用source命令,日志都打印在界面上了,如何让它输入到一个文件里面?
问题解答
回答1:执行前在mysql shell里面运行
tee output.log
之后你运行任何命令输出都会打在里面。output.log就是你要的文件,名字随便,路径随便
回答2:可以使用expect,比如我常用这样的一个import.sh脚本:
#!/usr/bin/env expectif {$argc<2} { send_user 'Usage: $argv0 sql_file database' exit}set sql_file [lindex $argv 0]set database [lindex $argv 1]spawn mysql -u root -pexpect 'password:'send '你的密码r'expect 'mysql>'send 'create database $database CHARACTER SET utf8 COLLATE utf8_general_ci;r'expect 'mysql>'send 'use $database;r'expect 'mysql>'send 'source $sql_file;r'expect 'mysql>'send 'show tables;r'expect 'mysql>'send 'quit;r'expect eof
然后,导入一个数据库并且记录日志就这样就行了:
import.sh path/to/sqlfile.sql some_database >> import.log
相关文章:
1. docker 17.03 怎么配置 registry mirror ?2. tp6 事务闭包操作问题3. python打开.py文件的时候出现window无法打开该文件是怎么回事呢?4. 主从复制 - MySQL 主从延迟 300s 以上,求大神解答5. docker gitlab 如何git clone?6. web服务器 - ubuntu下布置apache加wsgi加python7. css - 图片的宽度发生变化而高度却没有相应变?8. dockerfile - 为什么docker容器启动不了?9. javascript - sublime快键键问题10. javascript - 微信小程序 如何实现这种左滑动出现删除的办法?有相关api吗?

网公网安备