道非道 非常道

          勤思、謹言、慎行、厚積、薄發

          統計

          web

          天圓

          經濟 政治 軍事

          鍵康

          Linux SSH命令大全

          rm -rf mydir /* 刪除mydir目錄 */
          cd mydir /* 進入mydir目錄 */
          cd – /* 回上一級目錄 */
          cd ~ /* 回根目錄 */
          mv tools tool /* 把tools目錄改名為tool */
          ln -s tool bac

          /* 給tool目錄創建名為bac的符號鏈接,最熟悉的應該就是FTP中www鏈接到public_html目錄了 */

          cp -a tool /home/leavex/www /* 把tool目錄下所有文件復制到www目錄下 */
          rm go.tar /* 刪除go.tar文件 */
          find mt.cgi /* 查找文件名為mt.cgi的文件 */
          df –h /* 查看磁盤剩余空間,好像沒這個必要,除非你太那個了 */
          tar xvf wordpress.tar /* 解壓tar格式的文件 */
          tar -tvf myfile.tar /* 查看tar文件中包含的文件 */
          gzip -d ge.tar.gz /* 解壓.tar.gz文件為.tar文件 */
          unzip phpbb.zip /* 解壓zip文件,windows下要壓縮出一個.tar.gz格式的文件還是有點麻煩的 */
          tar cf toole.tar tool /* 把tool目錄打包為toole.tar文件 */
          tar cfz geek.tar.gz tool
          /* 把tool目錄打包且壓縮為geek.tar.gz文件,因為.tar文件幾乎是沒有壓縮過的,MT的.tar.gz文件解壓成.tar文件后差不多是10MB */

          wget http://www.sevenapart.com/download/wp.tar.gz
          /*下載遠程服務器上的文件到自己的服務器,連上傳都省了,服務器不是100M就是1000M的帶寬,下載一個2-3兆的MT還不是幾十秒的事 */
          wget -c http://www.eightapart.com/undone.zip
          /* 繼續下載上次未下載完的文件 */

          tar cfz geek.tar.gz tool
          /* 把tool目錄打包且壓縮為geek.tar.gz文件,因為.tar文件幾乎是沒有壓縮過的,MT的.tar.gz文件解壓成.tar文件后差不多是10MB */

          還有一些是VIM里要用到的,也羅列出來吧!

          移動類的:
          h/j/k/l: 左/下/上/右 移一格
          w : 向后詞移動?。ㄇ懊婕訑底忠苿佣嗌賯€詞)
          b : 向前詞移動?。ㄇ懊婕訑底忠苿佣嗌賯€詞)
          e : 向后移到詞末
          ge : 向前移到詞末
          $ : 行末
          0 : 行首
          tx : 向右查找本行的x并移到那兒(大寫時向左)
          33G : 移到文件的第33行
          gg : 文件首行
          G : 文件尾行
          33% : 文件的33%處
          H/M/L : 屏幕的首/中/尾行
          zt/zz/zb : 當前行移到屏幕的首/中/底部

          跳轉:
          ” : 回到跳轉來的地方
          CTRL-O : 跳到一個 “較老” 的地方
          CTRL-I : 則跳到一個 “較新” 的地方

          查找:
          / : 向下查找(后加關鍵字)
          ? : 向上查找(后加關鍵字)
          n : 下一條符合的記錄

          編輯:
          i : 轉換到插入模式
          x : 刪除當前字符
          . : 重復最后一次的修改操作(同PS里ctrl+f執行濾鏡)
          u : 撤銷操作
          CTRL-R : 重做
          p : 將刪除的字符插入到當前位置(put)

          退出保存:
          :q : 退出
          :q! : 不保存退出
          ZZ : 保存后退出
          :e! : 放棄修改重新編輯

          退出SSH后,繼續運行!
          #nohup wget http://www.phpv.net/file.tar.gz &

          wget是一個Linux環境下用于從World Wide Web上提取文件的工具,這是一個GPL許
          可證
          下的自由軟件,其作者為Hrvoje Niksic 。wget支持HTTP和
          FTP協議
          ,支持代理服務器和斷點續傳功能,能夠自動遞歸遠程主機的目錄,找到合乎條件
          的文
          件并將其下載到本地硬盤上;如果必要,wget將恰當地轉換頁面中的超級連接以在
          本地
          生成可瀏覽的鏡像。由于沒有交互式界面,wget可在后臺運行,截獲并忽略
          HANGUP信號
          ,因此在用戶推出登錄以后,仍可繼續運行。通常,wget用于成批量地下載
          Internet網
          站上的文件,或制作遠程網站的鏡像。

          語法:

          wget [options] [URL-list]
          URL地址格式說明:可以使用如下格式的URL:
          http://host[:port]/path
          例如:
          http://fly.cc.fer.hr/
          ftp://ftp.xemacs.org/pub/xemacs/xemacs-19.14.tar.gz
          ftp://username:password@host/dir/file
          在最后一種形式中,以URL編碼形式為FTP主機提供了用戶名和密碼(當然,也可以
          使用
          參數提供該信息,見后)。

          參數說明:

          wget的參數較多,但大部分應用只需要如下幾個常用的參數:
          -r 遞歸;對于HTTP主機,wget首先下載URL指定的文件,然后(如果該文
          件是
          一個HTML文檔的話)遞歸下載該文件所引用(超級連接)的所有文件(遞歸深度由
          參數
          -l指定)。對FTP主機,該參數意味著要下載URL指定的目錄中的所有文件,遞歸方
          法與
          HTTP主機類似。

          -N 時間戳:該參數指定wget只下載更新的文件,也就是說,與本地目錄中
          的對
          應文件的長度和最后修改日期一樣的文件將不被下載。

          -m 鏡像:相當于同時使用-r和-N參數。

          -l 設置遞歸級數;默認為5。-l1相當于不遞歸;-l0為無窮遞歸;注意,
          當遞
          歸深度增加時,文件數量將呈指數級增長。

          -t 設置重試次數。當連接中斷(或超時)時,wget將試圖重新連接。如
          果指
          定-t0,則重試次數設為無窮多。

          -c 指定斷點續傳功能。實際上,wget默認具有斷點續傳功能,只有當你使
          用別
          的ftp工具下載了某一文件的一部分,并希望wget接著完成此工作的時候,才需要
          指定
          此參數。

          使用舉例:
          wget -m -l4 -t0 http://oneweb.com.cn/
          將在本地硬盤建立http://oneweb.com.cn/的鏡像,鏡像文件存入當前目錄下一個
          名為
          oneweb.com.cn的子目錄中(你也可以使用-nH參數指定不建立該子目錄,而直接在
          當前
          目錄下建立鏡像的目錄結構),遞歸深度為4,重試次數為無窮(若連接出現問題
          ,
          wget將堅韌不拔地永遠重試下去,知道任務完成?。?/p>

          另外一些使用頻率稍低的參數如下:
          -A acclist / -R rejlist:
          這兩個參數用于指定wget接受或排除的文件擴展名,多個名稱之間用逗號隔開。例
          如,
          假設我們不想下載MPEG視頻影像文件和.AU聲音文件,可使用如下參數:
          -R mpg,mpeg,au

          其它參數還有:
          -L 只擴展相對連接,該參數對于抓取指定站點很有用,可以避免向宿主
          主機
          的其他目錄擴散。例如,某個人網站地址為:http://www.xys.org/~ppfl/,使用
          如下
          命令行:
          wget -L http://www.xys.org/~ppfl/
          則只提取該個人網站,而不涉及主機www.xys.org上的其他目錄。

          -k 轉換連接:HTML文件存盤時,將其中的非相對連接轉換成為相對連接。

          -X 在下載FTP主機上的文件時,排除若干指定的目錄

          另外,下面參數用于設置wget的工作界面:
          -v 設置wget輸出詳細的工作信息。
          -q 設置wget不輸出任何信息。

          如果我們已經在一個HTML文檔(或普通文本文檔)中存儲了所要提取的文件的連接
          ,可
          以讓wget直接從該文件中提取信息,而不用在命令行中提供URL地址,參數格式為

          -i filename
          地址文件也可以不是HTML文檔,例如,一個普通的文本文件,其中有需要下載的
          URL列
          表即可。
          我們可以用以下技巧提高下載速度:由于Linux是一個多任務系統,我們可以同時
          運行
          多個wget進程以提高下載速度,例如,先下載某主頁文件(index.html),然后將
          該文
          件所列出的所有地址分別用一個獨立的wget進程進行下載。

          至于其他的參數,可參考wget的man手冊頁,命令為:
          man wget

          Post in LAMP | No Comments »

          DreamHost中shell使用指南
          01月 28th, 2008
          DreamHost中shell使用指南

          1. Basic Instructions基本操作命令
          通常來說,使用”$[Instructions] –help”可以獲得以下各個命令[instructions]的幫助,包含其參數列表的定義。

          -ls 列出當前文件夾下所有內容
          $ls -o 列出當前文件夾中所有內容,含詳細信息,但不列出group
          $ls -l 同上,含group信息
          $ls -a 列出當前文件夾中所有內容,包含以”.”開頭的文件
          $ls -t 按更改時間排序
          $ls -v 按版本先后排序

          -cd [dir] 進入文件夾

          -pwd 顯示當前路徑

          -mkdir [dir] 新建文件夾

          -chmod 更改文件/文件夾權限
          $chmod [Mode] [dir],其中Mode形如”755″或”777″等。
          $chmod [Mode] [file]
          $chmod -R [Mode] [dir],遞歸形式,即將目標文件夾內所有文件均改變權限
          Mode還有另一種表達方式,”755″即為”-rwxr-xr-x”,不列舉了。

          -rm [file] 刪除文件/文件夾
          $rm -f [file] 強行刪除,忽略不存在的文件,無提示
          $rm -r [file] 遞歸刪除所有內容

          -cp 拷貝
          $cp [options] [source] [destination]
          其中[options]可以為-f(強行拷貝)或-r(遞歸拷貝)

          -mv 重命名或移動
          $mv [options] [source] [destination]
          [options]常用:-f(強行移動/重命名), -i(移動/重命名前嘗試), -u(更新)
          例如
          $mv wwwroot/cgi-bin . 將/cgi-bin目錄移動到當前目錄下
          $mv cronfile.txt myfile.txt 將cronfile.txt重命名為myfile.txt

          2. wget下載工具
          wget是一種非交互式的網絡文件下載工具,在linux下可以使用該工具快速地從網絡上下載所需要的文件而不需要經由本地硬盤中轉,而且速度極快。以下是一些使用方法:

          wget [參數列表] URL

          最簡單的用法:

          $wget http://targetdomain.com/file.tar

          wget的常用參數:
          · -t [nuber of times]:嘗試次數,當wget無法與服務器建立連接時,嘗試連接多少次。比如”-t120″表示嘗試120次。當這一項為”0″的時候,指定嘗試無 窮多次直到連接成功為止,這個設置非常有用,當對方服務器突然關機或者網絡突然中斷的時候,可以在恢復正常后繼續下載沒有傳完的文件;

          · -c:斷點續傳,這也是個非常有用的設置,特別當下載比較大的文件的時候,如果中途意外中斷,那么連接恢復的時候會從上次沒傳完的地方接著傳,而不是又從 頭開始,使用這一項需要遠程服務器也支持斷點續傳,一般來講,基于UNIX/linux的Web/FTP服務器都支持斷點續傳;

          · -T [number of seconds]:超時時間,指定多長時間遠程服務器沒有響應就中斷連接,開始下一次嘗試。比如”-T120″表示如果120秒以后遠程服務器沒有發過來 數據,就重新嘗試連接。如果網絡速度比較快,這個時間可以設置的短些,相反,可以設置的長一些,一般最多不超過900,通常也不少于60,一般設置在 120左右比較合適;

          · -w [number of seconds]:在兩次嘗試之間等待多少秒,比如”-w 100″表示兩次嘗試之間等待100秒;

          · -nd:不下載目錄結構,把從服務器所有指定目錄下載的文件都堆到當前目錄里;

          · -x:與”-nd”設置剛好相反,創建完整的目錄結構,例如”wget -nd http://www.gnu.org/ “,實際的目錄結構一級一級建下去,直到所有的文件都傳完為止;

          · -nH:不創建以目標主機域名為目錄名的目錄,將目標主機的目錄結構直接下到當前目錄下;

          · -r:遞歸下載,在本機建立服務器端目錄結構;

          · -l [depth]:下載遠程服務器目錄結構的深度,例如”-l 5″下載目錄深度小于或者等于5以內的目錄結構或者文件;

          · -m:做站點鏡像時的選項,如果你想做一個站點的鏡像,使用這個選項,它將自動設定其他合適的選項以便于站點鏡像;

          · -np:只下載目標站點指定目錄及其子目錄的內容。這也是一個非常有用的選項,我們假設某個人的個人主頁里面有一個指向這個站點其他人個人主頁的連接,而我們只想下載這個人的個人主頁,如果不設置這個選項,甚至–有可能把整個站點給抓下來,這顯然是我們通常不希望的;

          · –http-user=username
          · –http-passwd=password:如果Web服務器需要指定用戶名和口令,用這兩項來設定;

          · -O 將數據寫入文件中。

          3. Crontab 定時執行任務

          在DreamHost系統下, 通過Shell可以建立自己的crontab. 具體使用如下:
          使用支持shell登錄的終端(如fterm或putty), 地址欄輸入 username@hostguide.cn:22即可以SSH方式登錄至服務器.

          常用的crontab命令:
          crontab -l 顯示所有現存cron job.

          crontab -r 刪除當前cron jobs.

          crontab -e 編輯當前 “crontab file”. DH推薦使用nano

          注意你的crontab包含所有的cron jobs, 每個cron一行, 斷行結尾. 一個正常的cron如下所示:

          45 2 * * * /home/user/script.pl
          第一個數字是每小時的第幾分鐘,
          第二個數字是每天的第幾小時,
          第三個數字是每月的第幾天,
          第四個數字是每年的第幾月,
          第五個數字是每周的第幾天.

          使用方式例如:
          32 * * * * : 表示每小時的第32分鐘.
          12,42 * * * * : 表示每小時的第12及第42分鐘兩次
          */15 */2 * * *: 表示0:00, 0:15, 0:30, 0:45, 2:00, 2:15, 2:30, …
          43 18 * * 7: 表示每個周日的6:43pm運行命令行.

          在DreamHost下使用nano編輯完文件后,使用ctrl+o保存,ctrl+x退出編輯。

          4. tar命令
          tar命令的使用方法如下:

          tar [參數列表] [文件名]

          參數列表:
          -c 生成新的備份,并同時覆蓋舊的備份文件
          -x 從備份文件中解壓縮
          -t 列出備份文件內的文件目錄
          -v 顯示所有被操作文件列表
          -f 在指定位置生成備份
          -u 將不存在于備份中的文件,或將已經被更改的文件加入該備份中。

          舉例說明:
          tar cvf filename.tar /*制作備份*/
          tar cvf tarfile.tar ./filename /*將filename的文件備份到tarfile.tar里面*/
          tar tvf filename.tar /*列出tar文檔的內容*/
          tar xvf filename.tar /*從tar文檔中導出文件*/
          tar zxpvf filename.tar.gz /*從tar.gz文檔中導出文件*/
          tar zxvf filename.tar.gz /*同上*/
          tar xvf tarfile.tar ./filename /*導出tar文件中的單個文件*/

          5. vi編輯器
          Linux下很易用的一種編輯器,只需要稍微知道幾個指令即可應用。

          打開vi:
          $vi [filename]:打開或新建文件,并將光標置于第一行首
          $vi +n [filename] :打開文件,并將光標置于第n行首
          $vi + [filename] :打開文件,并將光標置于最后一行首
          $vi +/pattern [filename]:打開文件,并將光標置于第一個與pattern匹配的串處
          $vi -r [filename] :在上次正用vi編輯時發生系統崩潰,恢復filename
          $vi [filename]….[filename] :打開多個文件,依次編輯

          如果filename不存在,則自動生成一個名字filename的新文件。

          vi共有兩種狀態:命令狀態/編輯狀態

          編輯狀態下:
          第一次按下insert鍵為”insert”模式,再按一下為”replace”模式,使用ESC返回命令狀態;
          在此狀態下鍵盤的PgUp/PgDn/Insert/Delete/Home/End/方向鍵,均處于正常功能狀態。

          命令狀態下:
          輸入的字符串作為命令處理,使用”insert”鍵切換到編輯狀態;
          以下是命令狀態下的命令清單:

          移動光標類命令
          h :光標左移一個字符
          l :光標右移一個字符
          space:光標右移一個字符
          Backspace:光標左移一個字符
          k或Ctrl+p:光標上移一行
          j或Ctrl+n :光標下移一行
          Enter :光標下移一行
          w或W :光標右移一個字至字首
          b或B :光標左移一個字至字首
          e或E :光標右移一個字j至字尾
          ) :光標移至句尾
          ( :光標移至句首
          }:光標移至段落開頭
          {:光標移至段落結尾
          nG:光標移至第n行首
          n+:光標下移n行
          n-:光標上移n行
          n$:光標移至第n行尾
          H :光標移至屏幕頂行
          M :光標移至屏幕中間行
          L :光標移至屏幕最后行
          0:(注意是數字零)光標移至當前行首
          $:光標移至當前行尾

          屏幕翻滾類命令
          Ctrl+u:向文件首翻半屏
          Ctrl+d:向文件尾翻半屏
          Ctrl+f:向文件尾翻一屏
          Ctrl+b;向文件首翻一屏
          nz:將第n行滾至屏幕頂部,不指定n時將當前行滾至屏幕頂部。

          插入文本類命令
          i :在光標前
          I :在當前行首
          a:光標后
          A:在當前行尾
          o:在當前行之下新開一行
          O:在當前行之上新開一行
          r:替換當前字符
          R:替換當前字符及其后的字符,直至按ESC鍵
          s:從當前光標位置處開始,以輸入的文本替代指定數目的字符
          S:刪除指定數目的行,并以所輸入文本代替之
          ncw或nCW:修改指定數目的字
          nCC:修改指定數目的行

          刪除命令
          ndw或ndW:刪除光標處開始及其后的n-1個字
          do:刪至行首
          d$:刪至行尾
          ndd:刪除當前行及其后n-1行
          x或X:刪除一個字符,x刪除光標后的,而X刪除光標前的
          Ctrl+u:刪除輸入方式下所輸入的文本

          搜索及替換命令 :
          /pattern:從光標開始處向文件尾搜索pattern
          ?pattern:從光標開始處向文件首搜索pattern
          n:在同一方向重復上一次搜索命令
          N:在反方向上重復上一次搜索命令
          :s/p1/p2/g:將當前行中所有p1均用p2替代
          :n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代
          :g/p1/s//p2/g:將文件中所有p1均用p2替換

          選項設置
          all:列出所有選項設置情況
          term:設置終端類型
          ignorance:在搜索中忽略大小寫
          list:顯示制表位(Ctrl+I)和行尾標志($)
          number:顯示行號
          report:顯示由面向行的命令修改過的數目
          terse:顯示簡短的警告信息
          warn:在轉到別的文件時若沒保存當前文件則顯示NO write信息
          nomagic:允許在搜索模式中,使用前面不帶“"”的特殊字符
          nowrapscan:禁止vi在搜索到達文件兩端時,又從另一端開始
          mesg:允許vi顯示其他用戶用write寫到自己終端上的信息

          最后行方式命令
          :n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下
          :n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下
          :n1,n2 d :將n1行到n2行之間的內容刪除
          :w :保存當前文件
          :e filename:打開文件filename進行編輯
          :x:保存當前文件并退出
          :q:退出vi
          :q!:不保存文件并退出vi
          :!command:執行shell命令command
          :n1,n2 w!command:將文件中n1行至n2行的內容作為command的輸入并執行之,若不指
          定n1,n2,則表示將整個文件內容作為command的輸入
          :r!command:將命令command的輸出結果放到當前行 。Adminis

          Post in LAMP | No Comments »

          mysql的一些亂七八糟的東西
          01月 27th, 2008
          mysql的一些亂七八糟的東西 使用MYSQL半年,自己經常用的東西- -

          Mysql –h192.168.0.110 –uks –p –P4444登錄

          Mysqladmin –h192.168.0.110-uks –p reload重新加載用戶表

          Mysqldump –R –h192.168.0.110 –uks –p test>c:/test.sql備份

          Mysql –h192.168.0.110 –uks –p test
          Windows下net stop mysql關閉服務

          Net start mysql 開啟服務

          Linux下 service mysql stop關閉

          Service mysql start 開啟

          Service mysql restart重啟服務

          Linux下開機自動啟動mysql

          #>chkconfig –add mysql 開機啟動

          Chkconfig –del mysql 關閉自動啟動

          Chkconfig – -list 查看服務啟動情況

          Mysql命令行下

          Explain select……..查看該SELECT語句信息

          Show variables查看系統變量

          Show status 常看當前服務器狀態

          Show databases;

          Show tables;

          Show processlist

          Show warnings;(查看最近一個警告或錯誤)

          Set global xxxx=xxxx;

          Flush ……清楚mysql使用的部分內部緩存

          Information_schema.tables表信息

          Mysql動態語句5.1

          只支持create table,delete,do ,insert,replace,select set ,update語句

          Describe tablename查看該表結構

          Optimize table XXX 清理該表中已刪除的鏈接(可以釋放一些資源)

          Source c:abc.sql 在MYSQL命令行中執行腳本

          Select

          Create

          Insert

          Update

          Alter

          Grant

          revoke

          就不說了= =

          Mysql 數據庫名最長 64位字符串

          表名….. 64位字符串

          字段名……. 64位字符串

          用戶名…….. 16位字符串

          密碼……… 貌似沒限制

          Handler(很牛X的東東)

          Handler testt open as abc;

          Handler abc read id=(123456);

          Handler abc close;

          Benchmark(n,expr)執行N次EXPR并測算時間

          Post in LAMP | No Comments »

          MYSQL在命令行創建存儲過程
          01月 27th, 2008
          MYSQL在命令行創建存儲過程 如何在MYSQL命令行創建存儲過程

          今天早上在百度知道碰到這個問題,我開始沒看明白…….后來才知道提問人的意思是要在命令行下創建存儲過程。很感謝這個問題,因為我也不會呵呵,我一直都用EMS創建這些東西…….

          我也嘗試了一些方法,但是第一個分號mysql就以為語句結束了,就拿那個例子來說:

          CREATE PROCEDURE p7 (IN b INTEGER(12))

          begin

          declare a INTEGER(12);

          set a=5;

          INSERT INTO t VALUES (a);

          SELECT s1*a FROM t WHERE b<=s1;

          End

          這個存儲過程,在命令行直接創建的話,在第三排你輸入分號后就報錯了……因為MYSQL以為這個語句結束了,那對于MYSQL而言

          CREATE PROCEDURE p7 (IN b INTEGER(12))

          begin

          declare a INTEGER(12);

          肯定是個錯誤語句。

          然后看了些東西,原來要加分隔符- -……….

          DELIMITER //

          CREATE PROCEDURE p7 (IN b INTEGER(12))

          begin

          declare a INTEGER(12);

          set a=5;

          INSERT INTO t VALUES (a);

          SELECT s1*a FROM t WHERE b<=s1;

          End

          //

          就OK了…………意思就是說在//……//之間的當成一個語句執行所以MYSQL接到的才是這個存儲過程完整的創建語句。

          Post in LAMP | No Comments »

          mysql 基本命令
          01月 27th, 2008
          基礎介紹:

          1.在linux下使用下列命令,請確認mysql的bin目錄是否已經加入到PATH路徑中,或者是已經進入到mysql安裝路徑下的bin目錄
          查看PATH
          shell> echo $PATH
          或者
          shell> cd /usr/local/mysql/bin

          2.windows下,請運行cmd后,同樣檢查mysql的bin目錄是否已加入到系統的PATH路徑中,或直接進入mysql的安裝目錄

          下面所有操作都是確認你以檢查mysql的bin目錄已加入到系統的PATH路徑中,或已經進入mysql的安裝目錄的bin目錄下

          1]如何創建mysqld數據庫的管理用戶?

          數據庫安裝好后,我們應該為mysql數據庫創建一個管理帳號。要把root用戶設置為管理員,我們應該運行下面的命令;

          shell> mysqladmin -u root password 123456

          通過上面的命令,我們可以知道,mysql數據庫的管理員是root,密碼是123456。

          2]如何進入mysql數據庫?以mysql數據庫管理員root,密碼為123456為例;

          shell> mysql -uroot -p123456

          輸出上面的命令后,出現的是如下的提示;

          Welcome to the MySQL monitor. Commands end with ; or /g.
          Your MySQL connection id is 6 to server version: 3.23.58

          Type ‘help;’ or ‘/h’ for help. Type ‘/c’ to clear the buffer.

          mysql>

          注意:操作這些命令的時候,應該把mysqld服務器打開。這些新手兄弟早就知道了吧:)

          3]如何在數據庫中操作命令呢,我想這是mysql手冊都有的,我主要說幾個要注意的地方。其實我也會不了幾個命令。如果自己想學的弟兄,也不是什么難事;在windows中操作過mysql的,其實在這里也是一樣的,mysql是跨平臺的數據庫,用法都是相同的。

          在mysql數據庫中,每操作一個命令,都是;號結尾的,可能有的新手弟兄,忘記輸入了;號結尾,結果退不出來。:):)

          1]查看mysql中都有哪些數據庫?

          代碼:
          mysql>
          show databases;
          +———-+
          | Database |
          +———-+
          | mysql |
          | test |
          +———-+
          2 rows in set (0.00 sec) mysql>
          在mysql安裝好,設置好管理員后,第一次進入系統,我們用show databases;命令查看數據庫的列表,發現有兩個數據庫,mysql和test,這是系統自建的,是讓大家練習用的。

          4]如何創建和刪除一個數據庫?

          比如我要創建一個名為linux的數據庫,應該運行如下命令

          mysql> create database [數據庫名];

          所以我們應該運行如下的命令,來創建名為linux的數據庫

          mysql> create database linux;
          Query OK, 1 row affected (0.00 sec)

          是不是建好了呢??肯定是建好了,因為都有OK了:)

          查看是不是有linux這個數據庫了呢?

          代碼:
          mysql> show databases;
          +———-+
          | Database |
          +———-+
          | linux |
          | mysql |
          | test |
          +———-+
          3 rows in set (0.00 sec)

          那我們如何刪除一個數據庫呢??
          mysql> drop database [數據庫名];

          比如我們要把剛才創建的linux數據庫刪除,應該用下面的命令;
          mysql> drop database linux;
          Query OK, 0 rows affected (0.00 sec)

          是不是已經刪除了呢??

          代碼:
          mysql> show databases;
          +———-+
          | Database |
          +———-+
          | mysql |
          | test |
          +———-+
          2 rows in set (0.00 sec)

          5]如何操作一個數據庫呢,這個問題就比較多了,建議還是看一下mysql的手冊吧。里面的東西太多了。如果操作一個數據庫,首先是要指定一個數據庫為當前數據庫,應該用use命令

          mysql>use [數據庫];

          比如我想指定linux這個數據庫為當前數據庫,應該是

          mysql> use linux;
          Database changed

          6]如何備份數據庫??

          比如我們要備份mysql中已經存在的名為linux的數據庫,要用到命令mysqldump

          命令格式如下:

          shell> mysqldump -uroot -p linux > /root/linux.sql
          Enter password:在這里輸入數據庫的密碼

          通過上面的命令,我們要明白兩件事,首先備份數據庫是要以數據庫管理員的身份備份;其次:備份目的地是/root,備份的文件名是linux.sql。其實備份的位置和文件名,根據自己的情況來定。文件名可以自己來取,路徑也可以自己來安排;

          比如我想把linux的數據庫備份到/home/beinan,數據庫的文件名為linuxsir031130.sql,所以應該輸入如下的命令。
          shell> mysqldump -uroot -p linux > /home/beinan/linuxsir031130.sql
          Enter password:在這里輸入數據庫管理員root的數據庫密碼

          這樣我們到/home/beinan目錄下就能發現mysql中名為linux的數據庫的備份文件linuxsir031130.sql

          綜上所述,我們學習時要學會變通。:):)

          5]如何把把備份的數據庫導入到數據庫中?

          首先我們還是要操作上面幾個過程,比如添加數據庫管理員(如果您沒有添加過mysql數據庫管理員的話),創建數據庫等。

          比如我們要把在/home/beinan這個目錄中的linuxsir031130.sql這個備份,導入名為linux的數據庫中,應該如下操作;

          shell> mysql -uroot -p linux < /home/beinan/linuxsir031130.sql
          Enter password:在這里輸入密碼

          如果機器好,數據庫比較小,幾分鐘就好了。

          6]其它一些比較常用的mysql指令;

          查看狀態
          mysql> show status;

          查看進程

          代碼:
          mysql> show processlist;
          +—-+——+———–+——+———+——+——-+——————+| Id | User | Host | db | Command | Time | State | Info |
          +—-+——+———–+——+———+——+——-+——————+| 16 | root | localhost | NULL | Query | 0 | NULL | show processlist |
          +—-+——+———–+——+———+——+——-+——————+
          1 row in set (0.00 sec)

          查看表,應該先指定一個數據庫為當前數據庫;比如是名為linux的數據庫;

          mysql>use linux;
          mysql> show tables;
          Empty set (0.00 sec)

          7]對mysql數據庫常用命令的一點補充;

          幾個常用的mysql相關的管理命令

          mysql 命令:基本文本的,顯示和使用的mysql數據庫。前面已經簡單的提過用法;比如登錄等。

          mysqladmin 命令,用來創建和維護mysql數據庫的命令,前面已經簡單的提過;

          isamchk 是用來修復、檢查和優化.ism后綴的數據庫文件;

          mysqldump 是用于備份數據庫,前面已經簡單的說明過;

          myisamchk 用來修復.myi后綴的數據庫文件;

          比如我們要檢查名為linux的數據庫.myi數據庫表是否存在問題,應該用下面的命令;

          要把mysqld服務器停下來
          shell> ../share/mysql.server stop

          然后執行
          shell> myisamchk ../var/linux/*.MYI

          上面的命令的意思就是檢查所有的.myi文件,數據庫的目錄在../var/linux/目錄中

          如果有問題,應該用-r參數來修復
          shell> myisamchk -r ../var/linux/*.MYI

          6]mysqlshow 命令:顯示用戶選擇的數據庫和表
          shell> mysqlshow -uroot -p [數據庫名]

          比如我要查看名為linux的數據庫;應該是:

          shell> mysqlshow -uroot -p linux

          好了,到這里,你可能已經知道命令行下的所有基本操作了~

          ps:補充一個。。

          更改ROOT帳號名。

          update set user=”新名字” where user=”舊名字”;

          自己補充:
          在windows中的關閉mysql命令 net stop mysql ;啟動是net start mysql
          OPTIMIZE TABLE “;優化表

          Post in LAMP | No Comments »

          ib_logfile0和ib_logfile1,為INNODB數據LOG文件
          01月 27th, 2008
          ASK: 我的系統是windows2003,最近裝了MYSQL5.0后發現C盤容量劇減,后來仔細檢查了一下,發現ib_logfile0和 ib_logfile1竟然用了600多M,現在C盤8G的空間就剩余200M了,請問我要怎樣轉移ib_logfile0和ib_logfile1文件 到D盤呢?

          DA: ib_logfile0和ib_logfile1,為INNODB數據LOG文件,先停下數據庫.
          將這三個文件拷到它處
          修改MY.INI配置文件, 參數改為新目錄
          —————————
          innodb_log_group_home_dir

          The directory path to the InnoDB log files. It must have the same value as innodb_log_arch_dir. If you do not specify any InnoDB log parameters, the default is to create two 5MB files names ib_logfile0 and ib_logfile1 in the MySQL data directory.
          ————
          再啟動

          不過有個問題,LOG文件是固定不變,用來存儲未提交的數據,一般設為幾十兆就可以了,你的是否設置有問題.

          from:

          本文鏈接:http://www.scriptlover.com/post/605

          posted on 2009-11-25 17:33 星期五 閱讀(168) 評論(0)  編輯  收藏 所屬分類: linux 系統 、虛擬系統

          主站蜘蛛池模板: 万盛区| 南阳市| 改则县| 建阳市| 盘山县| 梁河县| 鸡东县| 建水县| 双城市| 寻乌县| 莲花县| 久治县| 宝山区| 临安市| 兰西县| 鞍山市| 万荣县| 中阳县| 疏勒县| 霍州市| 图木舒克市| 象山县| 汽车| 疏附县| 孟州市| 济宁市| 乌审旗| 团风县| 阿城市| 昌平区| 东兰县| 抚宁县| 龙陵县| 东辽县| 重庆市| 玉树县| 宁城县| 安图县| 涿鹿县| 涟水县| 荣成市|