ych

          mysql 常用命令

          1連接數(shù)據(jù)庫:

          進入mysql的安裝路徑bin如:C:>cd C:Program FilesMySQLMySQL Server 5.0bin

          輸入用戶名密碼: C:Program FilesMySQLMySQL Server 5.0bin>mysql -uroot -p123456

          2退出mysql

          mysql>exit

          3. 修改密碼:
          C:Program FilesMySQLMySQL Server 5.0bin>mysqladmin -uroot -p123456 password 456123

          4.增加用戶:
          添加一個用戶test1 密碼為ABC;讓他可以在任何主機上登錄,并對所有數(shù)據(jù)庫有查詢、插入、修改、刪除的權(quán)限。首先用以root用戶連入mysql,

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

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

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

          增加一個可以從任何地方連接服務(wù)器的一個完全的超級用戶
          mysql>grant all privileges on *.* to test3@"%" identified by 'abc' with grant option;

          5.刪除授權(quán)(與上面授權(quán)相對應(yīng))

          mysql>revoke select,insert,update,delete on *.* from test1@"%" ;

          mysql>revoke select,insert,update,delete on mydb.* from test2@localhost;

          mysql>revoke all privileges on *.* from test3@"%";

          6.顯示數(shù)據(jù)庫
          mysql>show databases;

          7.顯示數(shù)據(jù)庫中的表(exam數(shù)據(jù)庫名)
          mysql>use exam;
          mysql>show tables;

          8.顯示表的結(jié)構(gòu)(db_testtemp表名)
          mysql>describe db_testtemp;

          9.建庫
          mysql>create database 庫名;

          10.建表
          mysql>use test;
          mysql>create table teacher(

          id int(3) auto_increment not null primary key,

          name char(10) not null,

          address varchar(50) default 'beijing',

          year date

          );

          或者

          school.sql的內(nèi)容

          use exam;
          create table teacher(

          id int(3) auto_increment not null primary key,

          name char(10) not null,

          address varchar(50) default 'beijing',

          year date

          );

          把文件school.sql放到c:下,并在DOS狀態(tài)進入目錄C:>cd C:Program FilesMySQLMySQL Server 5.0bin
          然后C:Program FilesMySQLMySQL Server 5.0bin>mysql -uroot -p456123 < c:school.sql
          如果成功,空出一行無任何顯示;如有錯誤,會有提示。

          11.刪除庫
          mysql>drop database test;

          和刪除表

          mysql>use exam;
          mysql>drop table teacher;

          14.表重命名
          mysql>alter table teacher rename student;

          15. 備份數(shù)據(jù)庫(生成的exam.sql放在目錄C:Program FilesMySQLMySQL Server 5.0bin下)
          C:Program FilesMySQLMySQL Server 5.0bin>mysqldump -hlocalhost -uroot -pncae2010 exam > exam.sql

          16. 恢復(fù)數(shù)據(jù)庫(localhost不能用本機IP代替)
          C:Program FilesMySQLMySQL Server 5.0bin>mysql -hlocalhost -uroot -pncae2010 exam < exam.sql

          17.復(fù)制數(shù)據(jù)庫(把所有的數(shù)據(jù)庫備份到目錄C:Program FilesMySQLMySQL Server 5.0bin下的all-databases.sql文件中)
          C:Program FilesMySQLMySQL Server 5.0bin>mysqldump -hlocalhost -uroot -pncae2010 --all-databases > all-databases.sql

          18.備份表(生成的student.sql放在目錄C:Program FilesMySQLMySQL Server 5.0bin下)


          C:Program FilesMySQLMySQL Server 5.0bin>mysqldump -hlocalhost -uroot -pncae2010 exam student > student.sql

           

          19.恢復(fù)表(操作前先把原來的表刪除)
          C:Program FilesMySQLMySQL Server 5.0bin>mysql -h(ip) -uroot -p(password) databasename tablename < tablename.sql

          還有一些未實踐

          20.為了改變列a,從INTEGER改為TINYINT NOT NULL(名字一樣),
          并且改變列b,從CHAR(10)改為CHAR(20),同時重命名它,從b改為c:
          ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20);

          增加一個新TIMESTAMP列,名為d:
          ALTER TABLE t2 ADD d TIMESTAMP;

          在列d上增加一個索引,并且使列a為主鍵:
          ALTER TABLE t2 ADD INDEX (d), ADD PRIMARY KEY (a);

          刪除列c:
          ALTER TABLE t2 DROP COLUMN c;

          增加一個新的AUTO_INCREMENT整數(shù)列,命名為c:
          ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c);
          注意,我們索引了c,因為AUTO_INCREMENT柱必須被索引,并且另外我們聲明c為NOT NULL,
          因為索引了的列不能是NULL

          ---------------------------------------------------------------

          21.數(shù)據(jù)的導(dǎo)入導(dǎo)出
          A。mysqlimport
          語法:mysqlbinmysqlimport database tables.txt( 文件名需要與表名相同)
          參數(shù):-d or --delete 新數(shù)據(jù)導(dǎo)入數(shù)據(jù)表中之前刪除數(shù)據(jù)數(shù)據(jù)表中的所有信息;
          -f or --force 不管是否遇到錯誤
          -i or --ignore mysqlimport跳過或者忽略那些有相同唯一關(guān)鍵字的行, 導(dǎo)入文件中的數(shù)據(jù)將被忽略;
          -l or -lock-tables 數(shù)據(jù)被插入之前鎖住表,這樣就防止了, 你在更新數(shù)據(jù)庫時,用戶的查詢和更新受到影響;
          --fields-enclosed- by= char
            指定文本文件中數(shù)據(jù)的記錄時以什么括起的, 很多情況下數(shù)據(jù)以雙引號括起。 默認的情況下數(shù)據(jù)是沒有被字符括起的。
            --fields-terminated- by=char
            指定各個數(shù)據(jù)的值之間的分隔符,在句號分隔的文件中,分隔符是句號。您可以用此選項指定數(shù)據(jù)之間的分隔符。默認的分隔符是跳格符

          (Tab)
            --lines-terminated- by=str
            此選項指定文本文件中行與行之間數(shù)據(jù)的分隔字符串 或者字符。 默認的情況下mysqlimport以newline為行分隔符。 您可以選擇用一個字

          符串來替代一個單個的字符: 一個新行或者一個回車。
            mysqlimport命令常用的選項還有-v 顯示版本(version), -p 提示輸入密碼(password)等。

          --------------------------------------------------------------

          22.常用插入、修改、刪除語句
          插入記錄:insert into teacher s('','glchengang','深圳一中','1976-10-10');
          修改記錄:update mytable set single=′y′ where name=′abccs′;
          刪除記錄:delete from mytable where name=′abc′;

          出現(xiàn): mysql 的提示符,此時已進入mysql的交互操作方式。
          3、退出MySQL操作界面
          在mysql>提示符下輸入quit可以隨時退出交互操作界面:
          mysql> quit
          Bye
          你也可以用control-D退出。

          4、第一條命令
          mysql> select version(),current_date();
          +----------------+-----------------+
          | version() | current_date() |
          +----------------+-----------------+
          | 3.23.25a-debug | 2001-05-17 |
          +----------------+-----------------+
          1 row in set (0.01 sec)
          mysql>
          此命令要求mysql服務(wù)器告訴你它的版本號和當前日期。嘗試用不同大小寫操作上述命令,看結(jié)果如何。結(jié)果說明mysql命令的大小寫結(jié)果是一致的。
          練習(xí)如下操作:
          mysql>Select (20+5)*4;
          mysql>Select (20+5)*4,sin(pi()/3);
          mysql>Select (20+5)*4 AS Result,sin(pi()/3); (AS: 指定假名為Result)
          <B>5、多行語句</B>
          一條命令可以分成多行輸入,直到出現(xiàn)分號“;”為止:
          <ccid_nobr>
          <table width="400" border="1" cellspacing="0" cellpadding="2"
          bordercolorlight = "black" bordercolordark = "#FFFFFF" align="center">
          <tr>
          <td bgcolor="e6e6e6" class="code" style="font-size:9pt">
          <pre><ccid_code> mysql> select
          -> USER()
          -> ,
          -> now()
          ->;
          +--------------------+---------------------+
          | USER() | now() |
          +--------------------+---------------------+
          | ODBC@localhost | 2001-05-1:59:15 |
          +--------------------+---------------------+
          1 row in set (0.06 sec)
          mysql>
          注意中間的逗號和最后的分號的使用方法。

          6、一行多命令
          輸入如下命令:
          mysql> SELECT USER(); SELECT NOW();
          +------------------+
          | USER() |
          +------------------+
          | ODBC@localhost |
          +------------------+
          1 row in set (0.00 sec)
          +---------------------+
          | NOW() |
          +---------------------+
          | 2001-05-17 23:06:15 |
          +---------------------+
          1 row in set (0.00 sec)
          mysql>
          注意中間的分號,命令之間用分號隔開。

          7、顯示當前存在的數(shù)據(jù)庫
          mysql> show databases;
          +----------+
          | Database |
          +----------+
          | mysql |
          | test |
          +----------+
          2 row in set (0.06 sec)
          mysql>

          8、選擇數(shù)據(jù)庫并顯示當前選擇的數(shù)據(jù)庫
          mysql> USE mysql
          Database changed
          mysql>
          (USE 和 QUIT 命令不需要分號結(jié)束。)
          mysql> select database();
          +---------------+
          | database() |
          +---------------+
          | mysql |
          +---------------+
          1 row in set (0.00 sec)

          9、顯示當前數(shù)據(jù)庫中存在的表
          mysql> SHOW TABLES;

          10、顯示表(db)的內(nèi)容
          mysql>select * from db;

          11、命令的取消
          當命令輸入錯誤而又無法改變(多行語句情形)時,只要在分號出現(xiàn)前就可以用 c來取消該條命令

          mysql> select
          -> user()
          -> c
          mysql>

           

          posted on 2007-06-01 14:53 changhong 閱讀(220) 評論(0)  編輯  收藏


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


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          <2007年6月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          統(tǒng)計

          常用鏈接

          留言簿(1)

          隨筆檔案

          文章檔案

          相冊

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 汉源县| 大城县| 福鼎市| 罗平县| 宁都县| 通海县| 大安市| 榆林市| 芷江| 凉城县| 厦门市| 宜宾县| 安溪县| 定陶县| 铅山县| 佳木斯市| 老河口市| 黑龙江省| 靖西县| 巴东县| 晋江市| 密云县| 平凉市| 蓬安县| 林甸县| 油尖旺区| 潞西市| 铜山县| 富源县| 喀喇沁旗| 合山市| 望奎县| 九龙坡区| 诏安县| 浦北县| 彭阳县| 朝阳县| 德清县| 水城县| 马尔康县| 祥云县|