mysql 導出select語句結果到excel文件等


一、導出數據外部

1)mysql連接+將查詢結果輸出到文件。在命令行中執行(windows的cmd命令行,mac的終端)

mysql -hxx -uxx -pxx -e "query statement" db > file 

  -h:后面跟的是鏈接的host(主機)

  -u:后面跟的是用戶名

  -p:后面跟的是密碼

  db:你要查詢的數據庫

  file:你要寫入的文件,絕對路徑

例如:

  下面將 sql語句 select * from edu_iclass_areas 的查詢結果輸出到了 /Users/zhengcanrui/WORK/test/test.xls 這個文件中。

mysql -h127.0.0.1 -uroot -p123 -e "select * from edu_iclass_areas" test > /Users/zhengcanrui/WORK/test/test.xls

2)mysql連接 和 將查詢結果輸出到數據庫分開執行

mysql -hxxx -uxx -pxx 

select * from table into outfile 'xxx.txt'; 

  -h/-u/-p 的參數都沒的內容和上面一致, xxx.txt  是要輸出的文件路徑及其名稱。

如:

-- 登錄mysql
mysql -h127.0.0.1 -uroot -p123 

-- 將查詢結果輸出到文件中
select * from edu_iclass_areas  into outfile /Users/zhengcanrui/WORK/test/test.xls 

  上面兩種的執行效果是等價的。

二、遇到的問題

1、mac在終端啟動mysql的命令

1)安裝好MySQL服務后(安裝步驟可以參考系列經驗1)。打開“系統偏好設置”,單擊下端的“MySQL”圖標。

  

2)在“MySQL”對話框中,單擊“啟動MySQL服務”按鈕

3)在Finder的側邊欄中單擊“應用程序”,然后在“實用工具”中,雙擊啟動“終端”命令。

4)在終端中輸入添加MySQL路徑的命令:

PATH="$PATH":/usr/local/mysql/bin

5)在終端登錄到MySQL的命令如下:

mysql -u root -p

 

2、Access denied for user 'mysql用戶名'@'主機或IP' (using password: YES)'

原因:

  mysql的權限對localhost的訪問沒有放開。
  可以使用如下命令來放開權限(授權):
  首先進入到mysql的客戶端命令行。

然后輸入:

1:你想使用mysql的用戶名myuser從任何主機連接到mysql服務器,並使用mypassword作為密碼 

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 

flush privileges;

2:你想使用mysql的用戶名myuser從ip為192.168.1.3的主機連接到mysql服務器,並使用mypassword作為密碼 

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

flush privileges;

執行完這兩條命令就可以。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM