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

          手動安裝服務(wù)
          在my.ini文件中添加

          [mysqld]

          basedir=D:/mysql

          datadir=D:/mysql/data

          default-character-set= gbk

          運行

          D:\mysql\bin>mysqld-nt -remove

          Service successfully removed.

          D:\mysql\bin>mysqld-nt -install

          Service successfully installed.

          D:\mysql\bin>net start mysql

          MySQL 服務(wù)正在啟動 .

          MySQL 服務(wù)已經(jīng)啟動成功。



          一、連接MYSQL
          格式: mysql -h主機地址 -u用戶名 -p用戶密碼

          1、例1:連接到本機上的MYSQL。

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

          2、例2:連接到遠程主機上的MYSQL。假設(shè)遠程主機的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加個密碼ab12。首先在DOS下進入目錄mysqlbin,然后鍵入以下命令

          mysqladmin -uroot -password ab12

          注:因為開始時root沒有密碼,所以-p舊密碼一項就可以省略了。

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

          mysqladmin -uroot -pab12 password djg345

          三、增加新用戶。(注意:和上面不同,下面的因為是MYSQL環(huán)境中的命令,所以后面都帶一個分號作為命令結(jié)束符)

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

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

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

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

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

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

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

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

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

          一、操作技巧

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

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

          二、顯示命令

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

          show databases;

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

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

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

          show tables;

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

          describe 表名;

          4、建庫:

          create database 庫名;

          5、建表:

          use 庫名;

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

          6、刪庫和刪表:

          drop database 庫名;

          drop table 表名;

          7、將表中記錄清空:

          delete from 表名;

          8、顯示表中的記錄:

          select * from 表名;

          三、一個建庫和建表以及插入數(shù)據(jù)的實例(執(zhí)行sql script 文件)

          drop database if exists school; //如果存在SCHOOL則刪除

          create database school; //建立庫SCHOOL

          use school; //打開庫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('','Mary','bj','1976-10-10');
          insert into teacher values('','may','hhht','1975-12-23');

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

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

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

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

          已經(jīng)登陸了 MySql 時執(zhí)行SQL Script 時在 mysql 提示符下輸入 \. c:\school.sql  回車。
            

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

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

          例:
          3 rose bj 1976-10-10


          4 mike hongkong 1975-12-23


          2、數(shù)據(jù)傳入命令 load data local infile "文件名" into table 表名;


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


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


          mysqldump --opt school>school.bbb


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


          后記:其實MYSQL的對數(shù)據(jù)庫的操作與其它的SQL類數(shù)據(jù)庫大同小異,您最好找本將SQL的書看看。我在這里只介紹一些基本的,其實我也就只懂這些了,呵呵。最好的MYSQL教程還是"晏子"譯的"MYSQL中文參考手冊"不僅免費每個相關(guān)網(wǎng)站都有下載,而且它是最權(quán)威的。可惜不是象"PHP4中文手冊"那樣是chm的格式,在查找函數(shù)命令的時候不太方便。


            1.導(dǎo)出整個數(shù)據(jù)庫

            mysqldump -u 用戶名 -p 數(shù)據(jù)庫名 > 導(dǎo)出的文件名

            mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql

            2.導(dǎo)出一個表

            mysqldump -u 用戶名 -p 數(shù)據(jù)庫名 表名> 導(dǎo)出的文件名

            mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql

            3.導(dǎo)出一個數(shù)據(jù)庫結(jié)構(gòu)

            mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql

            -d 沒有數(shù)據(jù) --add-drop-table 在每個create語句之前增加一個drop table

            4.導(dǎo)入數(shù)據(jù)庫

            常用source 命令

            進入mysql數(shù)據(jù)庫控制臺,

            如mysql -u root -p

            mysql>use 數(shù)據(jù)庫

            然后使用source命令,后面參數(shù)為腳本文件(如這里用到的.sql)

            mysql>source d:wcnc_db.sql

          posted on 2006-10-10 17:25 SIMONE 閱讀(305) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 闽侯县| 即墨市| 新宁县| 新巴尔虎右旗| 郧西县| 宁德市| 巢湖市| 临颍县| 客服| 义乌市| 凤山县| 德格县| 灵寿县| 黑龙江省| 襄城县| 平陆县| 肥乡县| 伊宁县| 湛江市| 张家港市| 满洲里市| 久治县| 中山市| 昌图县| 花莲市| 道孚县| 芮城县| 广饶县| 长武县| 安平县| 封丘县| 恩平市| 蓬安县| 香港| 陈巴尔虎旗| 广安市| 岗巴县| 伊宁市| 彭阳县| 襄汾县| 文水县|