国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
mysql常用命令

mysql常用命令

有很多朋友雖然安裝好了 MySQL 但卻不知如何使用它。在這篇文章中我們就從連接 MySQL、修改密碼、增加用戶等方面來學(xué)習(xí)一些 MySQL 的常用命令。

一、連接MySQL。

格式: mysql -h主機(jī)地址 -u用戶名 -p用戶密碼

1、例1:連接到本機(jī)上的MYSQL。

  首先在打開 DOS 窗口,然后進(jìn)入目錄 mysql\bin,再鍵入命令mysql -uroot -p,回車后提示你輸密碼,如果剛安裝好 MySQL,超級(jí)用戶 root 是沒有密碼的,故直接回車即可進(jìn)入到 MySQL 中了,MySQL 的提示符是:mysql>

2、例2:連接到遠(yuǎn)程主機(jī)上的 MySQL。

  假設(shè)遠(yuǎn)程主機(jī)的IP為:110.110.110.110,用戶名為root,密碼為abcd123。則鍵入以下命令:



mysql -h110.110.110.110 -uroot -pabcd123



(注:u與root可以不用加空格,其它也一樣)



3、退出 MySQL 命令: exit (回車)



二、修改密碼。



格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼



1、例1:給root加個(gè)密碼ab12。首先在DOS下進(jìn)入目錄mysqlbin,然后鍵入以下命令



mysqladmin -uroot -password ab12



注:因?yàn)殚_始時(shí)root沒有密碼,所以-p舊密碼一項(xiàng)就可以省略了。



2、例2:再將root的密碼改為djg345。



mysqladmin -uroot -pab12 password djg345



三、增加新用戶。



(注意:和上面不同,下面的因?yàn)槭?MySQL 環(huán)境中的命令,所以后面都帶一個(gè)分號(hào)作為命令結(jié)束符)



格式:grant select on 數(shù)據(jù)庫(kù).* to 用戶名@登錄主機(jī) identified by "密碼"



例1、增加一個(gè)用戶 test1 密碼為 abc,讓他可以在任何主機(jī)上登錄,并對(duì)所有數(shù)據(jù)庫(kù)有查詢、插入、修改、刪除的權(quán)限。首先用以 root 用戶連入 MySQL,然后鍵入以下命令:



grant select, insert, update, delete on *.* to test1@"%" Identified by "abc";



但例1增加的用戶是十分危險(xiǎn)的,你想如某個(gè)人知道test1的密碼,那么他就可以在internet上的任何一臺(tái)電腦上登錄你的mysql數(shù)據(jù)庫(kù)并對(duì)你的數(shù)據(jù)可以為所欲為了,解決辦法見例2。



例2、增加一個(gè)用戶test2密碼為abc,讓他只可以在localhost上登錄,并可以對(duì)數(shù)據(jù)庫(kù) mydb進(jìn)行查詢、插入、修改、刪除的操作(localhost指本地主機(jī),即MYSQL數(shù)據(jù)庫(kù)所在的那臺(tái)主機(jī)),這樣用戶即使用知道test2的密碼,他也無(wú)法從internet上直接訪問數(shù)據(jù)庫(kù),只能通過MYSQL主機(jī)上的web頁(yè)來訪問了。



grant select, insert, update,delete on mydb.* to test2@localhost identified by "abc";



  如果你不想test2有密碼,可以再打一個(gè)命令將密碼消掉。



grant select, insert, update, delete on mydb.* to test2@localhost identified by "";



  在上篇我們講了登錄、增加用戶、密碼更改等問題。下篇我們來看看MYSQL中有關(guān)數(shù)據(jù)庫(kù)方面的操作。注意:你必須首先登錄到MYSQL中,以下操作都是在MYSQL的提示符下進(jìn)行的,而且每個(gè)命令以分號(hào)結(jié)束。



一、操作技巧



1、如果你打命令時(shí),回車后發(fā)現(xiàn)忘記加分號(hào),你無(wú)須重打一遍命令,只要打個(gè)分號(hào)回車就可以了。也就是說你可以把一個(gè)完整的命令分成幾行來打,完后用分號(hào)作結(jié)束標(biāo)志就OK。



2、你可以使用光標(biāo)上下鍵調(diào)出以前的命令。但以前我用過的一個(gè)MYSQL舊版本不支持。我現(xiàn)在用的是mysql-3.23.27-beta-win。



二、顯示命令



1、顯示數(shù)據(jù)庫(kù)列表。



show databases;



  剛開始時(shí)才兩個(gè)數(shù)據(jù)庫(kù):mysql 和 test。mysql 庫(kù)很重要它里面有 MySQL 的系統(tǒng)信息,我們改密碼和新增用戶,實(shí)際上就是用這個(gè)庫(kù)進(jìn)行操作。



2、顯示庫(kù)中的數(shù)據(jù)表:



use mysql; //打開庫(kù),學(xué)過 FOXBASE 的一定不會(huì)陌生吧



show tables;



3、顯示數(shù)據(jù)表的結(jié)構(gòu):



describe 表名;



4、建庫(kù):



create database 庫(kù)名;



5、建表:



use 庫(kù)名;



create table 表名 (字段設(shè)定列表);



6、刪庫(kù)和刪表:



drop database 庫(kù)名;



drop table 表名;



7、將表中記錄清空:



delete from 表名;



8、顯示表中的記錄:



select * from 表名;



三、一個(gè)建庫(kù)和建表以及插入數(shù)據(jù)的實(shí)例



drop database if exists school; //如果存在SCHOOL則刪除
create database school; //建立庫(kù)SCHOOL
use school; //打開庫(kù)SCHOOL
create table teacher //建立表TEACHER
(
    id int(3) auto_increment not null primary key,
    name char(10) not null,
    address varchar(50) default ‘深圳‘,
    year date
); //建表結(jié)束



//以下為插入字段
insert into teacher values(‘‘,‘glchengang‘,‘深圳一中‘,‘1976-10-10‘);
insert into teacher values(‘‘,‘jack‘,‘深圳一中‘,‘1975-12-23‘);



  注:在建表中(1)將 ID 設(shè)為長(zhǎng)度為 3 的數(shù)字字段 int(3) 并讓它每個(gè)記錄自動(dòng)加一,auto_increment 并不能為空 not null 而且讓他成為主字段 primary key(2)將 NAME 設(shè)為長(zhǎng)度為 10 的字符字段(3)將 ADDRESS 設(shè)為長(zhǎng)度 50 的字符字段,而且缺省值為深圳。varchar 和char 有什么區(qū)別呢,只有等以后的文章再說了。(4)將 YEAR 設(shè)為日期字段。



  如果你在 MySQL 提示符鍵入上面的命令也可以,但不方便調(diào)試。你可以將以上命令原樣寫入一個(gè)文本文件中假設(shè)為 school.sql,然后復(fù)制到 c:\ 下,并在 DOS 狀態(tài)進(jìn)入目錄 \mysql\bin\ ,然后鍵入以下命令:



mysql -uroot -p密碼 < c:\school.sql



  如果成功,空出一行無(wú)任何顯示;如有錯(cuò)誤,會(huì)有提示。(以上命令已經(jīng)調(diào)試,你只要將//的注釋去掉即可使用)。



四、將文本數(shù)據(jù)轉(zhuǎn)到數(shù)據(jù)庫(kù)中



1、文本數(shù)據(jù)應(yīng)符合的格式:字段數(shù)據(jù)之間用 tab 鍵隔開,null 值用 \n 來代替.



例:



3 rose 深圳二中 1976-10-10



4 mike 深圳一中 1975-12-23



2、數(shù)據(jù)傳入命令



load data local infile "文件名" into table 表名;



  注意:你最好將文件復(fù)制到 \mysql\bin 目錄下,并且要先用 use 命令打表所在的庫(kù)。



五、備份數(shù)據(jù)庫(kù): (命令在DOS的 \mysql\bin 目錄下執(zhí)行)



mysqldump --opt school>school.bbb



  注釋:將數(shù)據(jù)庫(kù) school 備份到 school.bbb 文件,school.bbb 是一個(gè)文本文件,文件名任取,打開看看你會(huì)有新發(fā)現(xiàn)。
--------------------------------------------------------------------
數(shù)據(jù)庫(kù)備份操作:



MySQL有很多可以導(dǎo)入數(shù)據(jù)的方法,然而這些只是數(shù)據(jù)傳輸中的一半,另外的一般是從MySQL數(shù)據(jù)庫(kù)中導(dǎo)出數(shù)據(jù)。有許多的原因我們需要導(dǎo)出數(shù)據(jù)。一個(gè)重要的原因是用于備份數(shù)據(jù)庫(kù)。數(shù)據(jù)的造價(jià)常常是昂貴的,需要謹(jǐn)慎處理它們。經(jīng)常地備份可以幫助防止寶貴數(shù)據(jù)地丟失;另外一個(gè)原因是,也許您希望導(dǎo)出數(shù)據(jù)來共享。 在這個(gè)信息技術(shù)不斷成長(zhǎng)的世界中,共享數(shù)據(jù)變得越來越常見。

   比方說Macmillan USA維護(hù)護(hù)著一個(gè)將要出版的書籍的大型數(shù)據(jù)庫(kù)。這個(gè)數(shù)據(jù)庫(kù)在許多書店之間共享,這樣他們就知道哪些書將會(huì)很快出版。醫(yī)院越來越走向采用無(wú)紙病歷記錄,這樣這些病歷可以隨時(shí)跟著你。世界變得越來越小,信息也被共享得越來越多。有很多中導(dǎo)出數(shù)據(jù)得方法,它們都跟導(dǎo)入數(shù)據(jù)很相似。因?yàn)?,畢竟,這些都只是一種透視得方式。從數(shù)據(jù)庫(kù)導(dǎo)出的數(shù)據(jù)就是從另一端導(dǎo)入的數(shù)據(jù)。這里我們并不討論其他的數(shù)據(jù)庫(kù)各種各樣的導(dǎo)出數(shù)據(jù)的方法,您將學(xué)會(huì)如何用MySQL來實(shí)現(xiàn)數(shù)據(jù)導(dǎo)出。
  
  使用mysqldump:
  
  (mysqldump命令位于mysql/bin/目錄中)

  mysqldump工具很多方面類似相反作用的工具mysqlimport。它們有一些同樣的選項(xiàng)。但mysqldump能夠做更多的事情。它可以把整個(gè)數(shù)據(jù)庫(kù)裝載到一個(gè)單獨(dú)的文本文件中。這個(gè)文件包含有所有重建您的數(shù)據(jù)庫(kù)所需要的SQL命令。這個(gè)命令取得所有的模式(Schema,后面有解釋)并且將其轉(zhuǎn)換成DDL語(yǔ)法(CREATE語(yǔ)句,即數(shù)據(jù)庫(kù)定義語(yǔ)句),取得所有的數(shù)據(jù),并且從這些數(shù)據(jù)中創(chuàng)建INSERT語(yǔ)句。這個(gè)工具將您的數(shù)據(jù)庫(kù)中所有的設(shè)計(jì)倒轉(zhuǎn)。因?yàn)樗械臇|西都被包含到了一個(gè)文本文件中。這個(gè)文本文件可以用一個(gè)簡(jiǎn)單的批處理和一個(gè)合適SQL語(yǔ)句導(dǎo)回到MySQL中。這個(gè)工具令人難以置信地簡(jiǎn)單而快速。決不會(huì)有半點(diǎn)讓人頭疼地地方。
  
  因此,如果您像裝載整個(gè)數(shù)據(jù)庫(kù)Meet_A_Geek的內(nèi)容到一個(gè)文件中,可以使用下面的命令:

  bin/mysqldump –p Meet_A_Geek > MeetAGeek_Dump_File.txt
  
  這個(gè)語(yǔ)句也允許您指定一個(gè)表進(jìn)行dump(備份/導(dǎo)出/裝載?)。如果您只是希望把數(shù)據(jù)庫(kù)Meet_A_Geek中的表Orders中的整個(gè)內(nèi)容導(dǎo)出到一個(gè)文件,可以使用下面的命令:

  bin/mysqldump –p Meet_A_Geek Orders >MeetAGeek_Orders.txt
  
  這個(gè)非常的靈活,您甚至可以使用WHERE從句來選擇您需要的記錄導(dǎo)出到文件中。要達(dá)到這樣的目的,可以使用類似于下面的命令:

  bin/mysqldump –p –where="Order_ID > 2000" Meet_A_Geek Orders > Special_Dump.txt
  
  mysqldump工具有大量的選項(xiàng),部分選項(xiàng)如下表:

  選項(xiàng)/Option 作用/Action Performed

  --add-drop-table

  這個(gè)選項(xiàng)將會(huì)在每一個(gè)表的前面加上DROP TABLE IF EXISTS語(yǔ)句,這樣可以保證導(dǎo)回MySQL數(shù)據(jù)庫(kù)的時(shí)候不會(huì)出錯(cuò),因?yàn)槊看螌?dǎo)回的時(shí)候,都會(huì)首先檢查表是否存在,存在就刪除

  --add-locks

  這個(gè)選項(xiàng)會(huì)在INSERT語(yǔ)句中捆上一個(gè)LOCK TABLE和UNLOCK TABLE語(yǔ)句。這就防止在這些記錄被再次導(dǎo)入數(shù)據(jù)庫(kù)時(shí)其他用戶對(duì)表進(jìn)行的操作
  
  -c or - complete_insert
這個(gè)選項(xiàng)使得mysqldump命令給每一個(gè)產(chǎn)生INSERT語(yǔ)句加上列(field)的名字。當(dāng)把數(shù)據(jù)導(dǎo)出導(dǎo)另外一個(gè)數(shù)據(jù)庫(kù)時(shí)這個(gè)選項(xiàng)很有用。

  --delayed-insert 在INSERT命令中加入DELAY選項(xiàng)

  -F or -flush-logs 使用這個(gè)選項(xiàng),在執(zhí)行導(dǎo)出之前將會(huì)刷新MySQL服務(wù)器的log.

  -f or -force 使用這個(gè)選項(xiàng),即使有錯(cuò)誤發(fā)生,仍然繼續(xù)導(dǎo)出

  --full 這個(gè)選項(xiàng)把附加信息也加到CREATE TABLE的語(yǔ)句中

  -l or -lock-tables 使用這個(gè)選項(xiàng),導(dǎo)出表的時(shí)候服務(wù)器將會(huì)給表加鎖。

  -t or -no-create- info

  這個(gè)選項(xiàng)使的mysqldump命令不創(chuàng)建CREATE TABLE語(yǔ)句,這個(gè)選項(xiàng)在您只需要數(shù)據(jù)而不需要DDL(數(shù)據(jù)庫(kù)定義語(yǔ)句)時(shí)很方便。
  
  -d or -no-data 這個(gè)選項(xiàng)使的mysqldump命令不創(chuàng)建INSERT語(yǔ)句。

  在您只需要DDL語(yǔ)句時(shí),可以使用這個(gè)選項(xiàng)。

  --opt 此選項(xiàng)將打開所有會(huì)提高文件導(dǎo)出速度和創(chuàng)造一個(gè)可以更快導(dǎo)入的文件的選項(xiàng)。

  -q or -quick 這個(gè)選項(xiàng)使得MySQL不會(huì)把整個(gè)導(dǎo)出的內(nèi)容讀入內(nèi)存再執(zhí)行導(dǎo)出,而是在讀到的時(shí)候就寫入導(dǎo)文件中。

  -T path or -tab = path 這個(gè)選項(xiàng)將會(huì)創(chuàng)建兩個(gè)文件,一個(gè)文件包含DDL語(yǔ)句或者表創(chuàng)建語(yǔ)句,另一個(gè)文件包含數(shù)據(jù)。DDL文件被命名為table_name.sql,數(shù)據(jù)文件被命名為table_name.txt.路徑名是存放這兩個(gè)文件的目錄。目錄必須已經(jīng)存在,并且命令的使用者有對(duì)文件的特權(quán)。
  
  -w "WHERE Clause" or -where = "Where clause "

  如前面所講的,您可以使用這一選項(xiàng)來過篩選將要放到 導(dǎo)出文件的數(shù)據(jù)。
  
  假定您需要為一個(gè)表單中要用到的賬號(hào)建立一個(gè)文件,經(jīng)理要看今年(2004年)所有的訂單(Orders),它們并不對(duì)DDL感興趣,并且需要文件有逗號(hào)分隔,因?yàn)檫@樣就很容易導(dǎo)入到Excel中。 為了完成這個(gè)人物,您可以使用下面的句子:

  bin/mysqldump –p –where "Order_Date >=‘2000-01-01‘"
  –tab = /home/mark –no-create-info –fields-terminated-by=, Meet_A_Geek Orders

  這將會(huì)得到您想要的結(jié)果。
  
  schema:模式

  The set of statements, expressed in data definition language, that completely describe the structure of a data base.

  一組以數(shù)據(jù)定義語(yǔ)言來表達(dá)的語(yǔ)句集,該語(yǔ)句集完整地描述了數(shù)據(jù)庫(kù)的結(jié)構(gòu)。
  
  SELECT INTO OUTFILE :
如果您覺得mysqldump工具不夠酷,就使用SELECT INTO OUTFILE吧, MySQL同樣提供一個(gè)跟LOAD DATA INFILE命令有相反作用的命令,這就是SELECT INTO OUTFILE 命令,這兩個(gè)命令有很多的相似之處。首先,它們有所有的選項(xiàng)幾乎相同。現(xiàn)在您需要完成前面用mysqldump完成的功能,可以依照下面的步驟進(jìn)行操作:
  
  1. 確保mysqld進(jìn)程(服務(wù))已經(jīng)在運(yùn)行

  2. cd /usr/local/mysql

  3. bin/mysqladmin ping ;// 如果這個(gè)句子通不過,可以用這個(gè):mysqladmin -u root -p ping

  mysqladmin ping用于檢測(cè)mysqld的狀態(tài),is alive說明正在運(yùn)行,出錯(cuò)則可能需要用戶名和密碼。

  4. 啟動(dòng)MySQL 監(jiān)聽程序.

  5. bin/mysql –p Meet_A_Geek;// 進(jìn)入mysql命令行,并且打開數(shù)據(jù)庫(kù)Meet_A_Geek,需要輸入密碼

  6. 在命令行中,輸入一下命令:

  SELECT * INTO OUTFILE ‘/home/mark/Orders.txt‘
  FIELDS
  TERMINATED BY = ‘,‘
  FROM Orders
  WHERE Order_Date >= ‘2000-01-01‘
  
  在你按了Return(回車)之后,文件就創(chuàng)建了。這個(gè)句子就像一個(gè)規(guī)則的SELECT語(yǔ)句,只是把想屏幕的輸出重定向到了文件中。這意味這您可以使用JOIN來實(shí)現(xiàn)多表的高級(jí)查詢。這個(gè)特點(diǎn)也可以被用作一個(gè)報(bào)表產(chǎn)生器。
  
  比方說,您可以組合這一章中討論的方法來產(chǎn)生一個(gè)非常有趣的查詢,試試這個(gè):
  
  在mysql目錄建立一個(gè)名為Report_G.rpt 的文本文件,加入下面的行:

  USE Meet_A_Geek;
  INSERT INTO Customers (Customer_ID, Last_Name, First_Name)
  VALUES (NULL, "Kinnard", "Vicky");
  INSERT INTO Customers (Customer_ID, Last_Name, First_Name)
  VALUES (NULL, "Kinnard", "Steven");
  INSERT INTO Customers (Customer_ID, Last_Name, First_Name)
  VALUES (NULL, "Brown", "Sam");
  SELECT Last_Name INTO OUTFILE ‘/home/mark/Report.rpt‘
  FROM Customers WHERE Customer_ID > 1;

  然后確認(rèn) mysql進(jìn)程在運(yùn)行,并且您在mysql目錄中, 輸入下面的命令:

bin/mysql < Report_G.rpt檢查您命名作為輸出的文件,這個(gè)文件將會(huì)包含所有您在Customers表中輸入的顧客的姓。 如您所見,您可以使用今天學(xué)到的導(dǎo)入/導(dǎo)出(import/export)的方法來幫助得到報(bào)表。
-----------------------------------------------------------
-----------------------------------------------------------

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
【5】MySQL導(dǎo)入導(dǎo)出方法與工具總結(jié)
MySQL數(shù)據(jù)導(dǎo)入導(dǎo)出
使用mysqldump工具導(dǎo)出mysql數(shù)據(jù)
mysql的備份與修復(fù)
mysql mysqldump導(dǎo)出與導(dǎo)入sql文件
MySQL數(shù)據(jù)庫(kù)常用備份方法和注意事項(xiàng)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服