mysql查詢結果輸出到檔案

2022-03-10 09:53:24 字數 1529 閱讀 8040

在mysql命令列環境下執行: sql語句+into outfile +檔案路徑/檔名 +編碼方式(可選)

例如:select* from (表名)into outfile'/usr/local/test.txt';

1)可能會報沒有 select command denied(沒有查詢許可權) 或者access denied for user(沒有file許可權) ,增加許可權之後即可。

2)不能存在同名檔案,否則sql執行失敗。

3)生成檔案格式也可以是.txt/.xls/.csv。

4) 生成的檔案中可能會有中文亂碼問題,可以在語句後面+character set gbk (utf8等)

例如: select* from (表名)into outfile'/usr/local/test.txt'character set gbk;

5)如果sql查詢出來的資料報含有很大的數值型資料,則在excel中這些數值資料可能會出問題,因此,可以先導出為.txt/.csv檔案格式,再複製黏貼到excel檔案中(首先設定單元格格式為文字)

在登入某伺服器後,採用 mysql 命令執行 ,不需要登入進mysql命令列環境下。

例如:mysql -h 127.0.0.1 -u使用者名稱 -p密碼--default-character-set=gb2312 -e "select * from 表名" 資料庫名 > test.txt

注:-e 查詢條件語句 後面跟上目標資料庫

若有中文亂碼,新增設定編碼方式 utf8 、gbk

有的時候需要檢視資料庫的某些資訊,然後繼續接下來的 shell 命令操作,登入資料庫在退出嫌麻煩可以使用這招:

例 1:列出所有資料庫

mysql -h host_name

-p3306 -u user_name

-p'password

'-se "show databases;"

例 2:列出 database 下的所有表

mysql -h host_name

-p3306 -u user_name

-p'password

'-d database

-se "show tables;"

user_name: 登入資料庫使用者名稱;

password:登入資料庫密碼;

database: 資料庫名;

例:

[

root@localhost tmp

]# mysql -h 172.16.30.50

-uroot -proot -d plat -se "select ip_str,major_version,minor_version,vendor,series,model from plat_resource_config"

mysql查詢結果輸出到檔案

mysql查詢結果匯出 輸出 寫入到檔案 方法一 直接執行命令 mysql select count 1 from table into outfile tmp test.xls query ok,31 rows affected 0.00 sec 在目錄 tmp 下會產生檔案test.xls 遇到...

mysql查詢結果匯出到檔案

方法一 直接執行命令 mysql select count 1 fromtable into outfile tmp test.xls query ok,31 rows affected 0.00 sec 在目錄 tmp 下會產生檔案test.xls 遇到的問題 mysql select count...

mysql查詢結果匯出到檔案

環境 mysql 進入mysql shell mysql u username password password database database然後輸入匯出查詢結果命令 select from table1 into outfile data test1.txt 報錯error 1045 28...