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. thinkphp5.0.24+PHPExcel導出功能總是導出不了,請大佬們幫忙分析原因2. utf-8 - python在windows命令行下生成文件亂碼問題,如何解決?3. javascript - 正則表達式 w只匹配出一個字母,若要匹配出一個單詞,怎么寫?4. javascript - react input file5. docker - 如何修改運行中容器的配置6. css - input間的間距和文字上下居中7. html5 - bootstrap修改樣式的問題8. npm鏡像站全新上線9. javascript - 關于ios微信端瀏覽器網頁的一些問題10. 現在大家是用Mysql還是mariaDb?
