將mysql中某個欄位的值匯出到本地檔案的方法

2021-12-30 02:44:44 字數 1564 閱讀 1145

在命令列中mysqldump database_name -uroot -p [table_name] > file_name

-d只匯出資料結構,不匯出資料

-t只匯出資料不匯出資料結構

進入mysql,然後 select ...... into outfile 'file_name';

mysql> select name from 2009tianjin into outfile './lll.sql';

error 1290 (hy000): the mysql server is running with the --secure-file-priv option so it cannot execute this statementmysql> select @@global.secure_file_priv;+---------------------------+

| @@global.secure_file_priv |

+---------------------------+

| /var/lib/mysql-files/ |

+---------------------------+

1 row in set (0.00 sec)

mysql> select name from 2009tianjin into outfile '/var/lib/mysql-files/lll.sql' ;

query ok, 89 rows affected (0.06 sec)然後在/var/lib/mysql-files目錄下的lll.sql就是你匯出來的資料,在ubuntu下,你還cd不到這個目錄,錯誤是這樣的:

zz@haha:~$ cd /var/lib/mysql-files/

bash: cd: /var/lib/mysql-files/: 許可權不夠

zz@haha:~$ sudo cd /var/lib/mysql-files

sudo: cd:找不到命令cd是shell自帶的程式,而不是系統可執行程式命令,對於這種情況,可以使用sudo開啟乙個shell使用cd命令,或者使用su切換到root使用者後再在shell中使用cd命令。

sudo 是一種程式,用於提公升使用者的許可權,在linux中輸入sudo就是呼叫這個程式提公升許可權;shell是乙個命令解析器,sudo cd是錯誤的,因為cd是shell內建的,不是系統裡面的,sudo可以執行系統帶的命令,但無法用系統中乙個軟體中的命令。

這是bug!!!!

所以你可以這麼幹,申請乙個root賬號:

z@haha:~$ sudo passwd root

輸入新的 unix 密碼:

重新輸入新的 unix 密碼:

passwd:已成功更新密碼

zz@haha:~$ su root

密碼:

root@haha:/home/zz# cd /var/lib/mysql-files

root@haha:/var/lib/mysql-files# ls

lll.sql

root@haha:/var/lib/mysql-files# mv ./lll.sql /home/zz

mysql 替換某個欄位中的某個字元

遇到這麼個情況 比如 msql裡面的某個表的某個字段裡面儲存的是乙個人的位址,有一天這個位址的裡面的某個地 名變了,那麼他的位址也就要變 比如 原來是 csharp view plain copy number addr 01 四川省成都市 街道05號 02 四川省成都市 街道07號 03 四川省成...

mysql替換某個欄位中的某個字元

比如 msql裡面的某個表的某個字段裡面儲存的是乙個人的位址,有一天這個位址的裡面的某個地 名變了,那麼他的位址也就要變 比如 原來是 number addr 01 中國浙江 02 中國浙江 03 中國浙江 現在位址改了 浙江 搬到了 上海 所以,addr欄位裡面的所有的值,都要把 浙江 改為 上海...

mysql計算某個字段最長值

方式一 mysql查詢某列最長字串記錄 select字段,length 字段 from 表名 where length 字段 select max length 字段 from 表名 方式二 手動看如果只需要針對使用者查出其最後登入的時間,可以簡單寫出 select uid,max login ti...