2025-04-23

MySql常用命令集Mysql常用命令showdatabases;顯示資料庫createdatab。

MySql 常用命令集

Mysql常用命令

show databases; 顯示資料庫

create database name; 創建資料庫

use databasename; 選擇資料庫

drop database name 直接刪除資料庫,不提醒

show tables; 顯示表

describe tablename; 顯示具體的表結構

select 中加上distinct去除重復字段

mysqladmin drop databasename 刪除資料庫前,有提示。

顯示當前mysql版本和當前日期

select version(),current_date;

修改mysql中root的密碼:

shell>mysql -h localhost -u root -p //登錄

mysql> update user set password=password("xueok654123") where user='root';

mysql> flush privileges //刷新資料庫

mysql>use dbname; 打開資料庫:

mysql>show databases; 顯示所有資料庫

mysql>show tables; 顯示資料庫mysql中所有的表:先use mysql;然後

mysql>describe user; 顯示表mysql資料庫中user表的列信息);

grant

創建用戶firstdb(密碼firstdb)和資料庫,並賦予權限於firstdb資料庫

mysql> create database firstdb;

mysql> grant all on firstdb.* to firstdb identified by 'firstdb'

會自動創建用戶firstdb

mysql默認的是本地主機是localhost,對應的IP地址就是127.0.0.1,所以你用你的IP地址登錄會出錯,如果你想用你的IP地址登錄就要先進行授權用grant命令。

mysql>grant all on *.* to root@202.116.39.2 identified by "123456";

說明:grant 與on 之間是各種權限,例如:insert,select,update等

on 之後是資料庫名和表名,第一個*表示所有的資料庫,第二個*表示所有的表

root可以改成你的用戶名,@後可以跟域名或IP地址,identified by 後面的是登錄用的密碼,可以省略,即缺省密碼或者叫空密碼。

drop database firstdb;

創建一個可以從任何地方連接伺服器的一個完全的超級用戶,但是必須使用一個口令something做這個

mysql> grant all privileges on *.* to user@localhost identified by 'something' with

增加新用戶

格式:grant select on 資料庫.* to 用戶名@登錄主機 identified by "密碼"

GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY 'something' WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO monty@"%" IDENTIFIED BY 'something' WITH GRANT OPTION;

刪除授權:

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

mysql> delete from user where user="root" and host="%";

mysql> flush privileges;

創建一個用戶custom在特定客戶端it363.com登錄,可訪問特定資料庫fangchandb

mysql >grant select, insert, update, delete, create,drop on fangchandb.* to custom@ it363.com identified by ' passwd'

重命名表:

mysql > alter table t1 rename t2;

mysqldump

備份資料庫

shell> mysqldump -h host -u root -p dbname >dbname_backup.sql

恢復資料庫

shell> mysqladmin -h myhost -u root -p create dbname

shell> mysqldump -h host -u root -p dbname < dbname_backup.sql

如果隻想卸出建表指令,則命令如下:

shell> mysqladmin -u root -p -d databasename > a.sql

如果隻想卸出插入數據的sql命令,而不需要建表命令,則命令如下:

shell> mysqladmin -u root -p -t databasename > a.sql

那麼如果我隻想要數據,而不想要什麼sql命令時,應該如何操作呢

mysqldump -T./ phptest driver

其中,隻有指定瞭-T參數才可以卸出純文本文件,表示卸出數據的目錄,./表示當前目錄,即與mysqldump同一目錄。如果不指定driver表,則將卸出整個資料庫的數據。每個表會生成兩個文件,一個為.sql文件,包含建表執行。另一個為.txt文件,隻包含數據,且沒有sql指令。

可將查詢存儲在一個文件中並告訴mysql從文件中讀取查詢而不是等待鍵盤輸入。可利用外殼程式鍵入重定向實用程式來完成這項工作。例如,如果在文件my_file.sql 中存放有查

詢,可如下執行這些查詢:

例如,如果您想將建表語句提前寫在sql.txt中,

mysql > mysql -h myhost -u root -p

Mysql5.0支持的字符集

MySQL中的字符集控制做得比較細,可以分為資料庫級,表級, 字段級(這一點和ORACLE不同)。我上次改的字符集是資料庫級的,對表sysuser沒有影響,所以出現瞭改瞭字符集卻一樣無法插入中文的情況。

Drop TABLE IF EXISTS `firstdb`.`users`;

Create TABLE `firstdb`.`users` (

`id` int(11) NOT NULL auto_increment,

`username` varchar(40) default NULL,

`birthday` date default NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=gb2312;

編譯 MySQL 時,指定瞭一個默認的字符集,這個字符集是 latin1;

安裝 MySQL 時,可以在配置文件 (my.ini) 中指定一個默認的的字符集,如果沒指定,這個值繼承自編譯時指定的;

啟動 mysqld 時,可以在命令行參數中指定一個默認的的字符集,如果沒指定,這個值繼承自配置文件中的;

此時 character_set_server 被設定為這個默認的字符集;

當創建一個新的資料庫時,除非明確指定,這個資料庫的字符集被缺省設定為    character_set_server;

當選定瞭一個資料庫時,character_set_database 被設定為這個資料庫默認的字符集;

在這個資料庫裡創建一張表時,表默認的字符集被設定為 character_set_database,也就是這個資料庫默認的字符集;

當在表內設置一欄時,除非明確指定,否則此欄缺省的字符集就是表默認的字符集;

這個字符集就是資料庫中實際存儲數據采用的字符集,mysqldump 出來的內容就是這個字符集下的;Query Browser1.1 對中文輸入的支持太差勁瞭,可以用notebook寫好後,再copy過去執行

update firstdb.users set username='以' where id=3;

MYSQL 常用命令

1.導出整個資料庫

mysqldump -u 用戶名 -p –default-character-set=latin1 資料庫名 > 導出的

文件名(資料庫默認編碼是latin1)

mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql

2.導出一個表

mysqldump -u 用戶名 -p 資料庫名 表名> 導出的文件名

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

3.導出一個資料庫結構

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

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

4.導入資料庫

A:常用source 命令

進入mysql資料庫控制臺,

如mysql -u root -p

mysql>use 資料庫

然後使用source命令,後面參數為腳本文件(如這裡用到的.sql)

mysql>source wcnc_db.sql

B:使用mysqldump命令

mysqldump -u username -p dbname < filename.sql

C:使用mysql命令

mysql -u username -p -D dbname < filename.sql

一、啟動與退出

1、進入MySQL:啟動MySQL Command Line Client(MySQL的DOS界面),直接輸入

安裝時的密碼即可。此時的提示符是:mysql>

2、退出MySQL:quit或exit

二、庫操作

1、、創建資料庫

命令:create database <資料庫名>

例如:建立一個名為xhkdb的資料庫

mysql> create database xhkdb;

2、顯示所有的資料庫

命令:show databases (註意:最後有個s)

mysql> show databases;

3、刪除資料庫

命令:drop database <資料庫名>

例如:刪除名為 xhkdb的資料庫

mysql> drop database xhkdb;

4、連接資料庫

命令: use <資料庫名>

例如:如果xhkdb資料庫存在,嘗試存取它:

mysql> use xhkdb;

屏幕提示:Database changed

5、查看當前使用的資料庫

mysql> select database();

6、當前資料庫包含的表信息:

mysql> show tables; (註意:最後有個s)

三、表操作,操作之前應連接某個資料庫

1、建表

命令:create table <表名> ( <字段名1> <類型1> [,..<字段名n> <類型n>]);

mysql> create table MyClass(

> id int(4) not null primary key auto_increment,

> name char(20) not null,

> sex int(4) not null default '0',

> degree double(16,2));

2、獲取表結構

命令: desc 表名,或者show columns from 表名

mysql>DESCRIBE MyClass

mysql> desc MyClass;

mysql> show columns from MyClass;

3、刪除表

命令:drop table <表名>

例如:刪除表名為 MyClass 的表

mysql> drop table MyClass;

4、插入數據

命令:insert into <表名> [( <字段名1>[,..<字段名n > ])] values ( 值1 )[,

( 值n )]

例如,往表 MyClass中插入二條記錄, 這二條記錄表示:編號為1的名為Tom的成績

為96.45, 編號為2 的名為Joan 的成績為82.99,編號為3 的名為Wang 的成績為

96.5.

mysql> insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99),

(2,'Wang', 96.59);

5、查詢表中的數據

1)、查詢所有行

命令: select <字段1,字段2,…> from < 表名 > where < 表達式 >

例如:查看表 MyClass 中所有數據

mysql> select * from MyClass;

2)、查詢前幾行數據

例如:查看表 MyClass 中前2行數據

mysql> select * from MyClass order by id limit 0,2;

或者:

mysql> select * from MyClass limit 0,2;

6、刪除表中數據

命令:delete from 表名 where 表達式

例如:刪除表 MyClass中編號為1 的記錄

mysql> delete from MyClass where id=1;

7、修改表中數據:update 表名 set 字段=新值,… where 條件

mysql> update MyClass set name='Mary' where id=1;

7、在表中增加字段:

命令:alter table 表名 add字段 類型 其他;

例如:在表MyClass中添加瞭一個字段passtest,類型為int(4),默認值為0

mysql> alter table MyClass add passtest int(4) default '0'

8、更改表名:

命令:rename table 原表名 to 新表名;

例如:在表MyClass名字更改為YouClass

mysql> rename table MyClass to YouClass;

更新字段內容

update 表名 set 字段名 = 新內容

update 表名 set 字段名 = replace(字段名,'舊內容','新內容');

文章前面加入4個空格

update article set content=concat('  ',content);

字段類型

1.INT[(M)] 型: 正常大小整數類型

2.DOUBLE[(M,D)] [ZEROFILL] 型: 正常大小(雙精密)浮點數字類型

3.DATE 日期類型:支持的范圍是1000-01-01到9999-12-31。MySQL以YYYY-MM-DD

格式來顯示DATE值,但是允許你使用字符串或數字把值賦給DATE列

4.CHAR(M) 型:定長字符串類型,當存儲時,總是是用空格填滿右邊到指定的長

5.BLOB TEXT類型,最大長度為65535(2^16-1)個字符。

6.VARCHAR型:變長字符串類型

5.導入資料庫表

(1)創建.sql文件

(2)先產生一個庫如auction.c:mysqlbin>mysqladmin -u root -p creat

auction,會提示輸入密碼,然後成功創建。

(2)導入auction.sql文件

c:mysqlbin>mysql -u root -p auction < auction.sql。

通過以上操作,就可以創建瞭一個資料庫auction以及其中的一個表auction

6.修改資料庫

(1)在mysql的表中增加字段:

alter table dbname add column userid int(11) not null primary key

auto_increment;

這樣,就在表dbname中添加瞭一個字段userid,類型為int(11)。

7.mysql資料庫的授權

mysql>grant select,insert,delete,create,drop

on *.* (或test.*/user.*/..)

to 用戶名@localhost

identified by '密碼';

如:新建一個用戶帳號以便可以訪問資料庫,需要進行如下操作:

mysql> grant usage

-> ON test.*

-> TO testuser@localhost;

Query OK, 0 rows affected (0.15 sec)

此後就創建瞭一個新用戶叫:testuser,這個用戶隻能從localhost連接到數

據庫並可以連接到test 資料庫。下一步,我們必須指定testuser這個用戶可以執

行哪些操作:

mysql> GRANT select, insert, delete,update

-> ON test.*

-> TO testuser@localhost;

Query OK, 0 rows affected (0.00 sec)

此操作使testuser能夠在每一個test資料庫中的表執行Select,Insert和

Delete以及Update查詢操作。現在我們結束操作並退出MySQL客戶程式:

mysql> exit

Bye9!

1:使用SHOW語句找出在伺服器上當前存在什麼資料庫:

mysql> SHOW DATABASES;

2:2、創建一個資料庫MYSQLDATA

mysql> Create DATABASE MYSQLDATA;

3:選擇你所創建的資料庫

mysql> USE MYSQLDATA; (按回車鍵出現Database changed 時說明操作成功!)

4:查看現在的資料庫中存在什麼表

mysql> SHOW TABLES;

5:創建一個資料庫表

mysql> Create TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));

6:顯示表的結構:

mysql> DESCRIBE MYTABLE;

7:往表中加入記錄

mysql> insert into MYTABLE values ("hyq","M");

8:用文本方式將數據裝入資料庫表中(例如D:/mysql.txt)

mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;

9:導入.sql文件命令(例如D:/mysql.sql)

mysql>use database;

mysql>source d:/mysql.sql;

10:刪除表

mysql>drop TABLE MYTABLE;

11:清空表

mysql>delete from MYTABLE;

12:更新表中數據

mysql>update MYTABLE set sex="f" where name='hyq';

以下是無意中在網絡看到的使用MySql的管理心得,

自:

html

在windows中MySql以服務形式存在,在使用前應確保此服務已經啟動,未啟動可用

net start mysql命令啟動。而Linux中啟動時可用"/etc/rc.d/init.d/mysqld

start"命令,註意啟動者應具有管理員權限。

剛安裝好的MySql包含一個含空密碼的root帳戶和一個匿名帳戶,這是很大的安全

隱患,對於一些重要的應用我們應將安全性盡可能提高,在這裡應把匿名帳戶刪除

、 root帳戶設置密碼,可用如下命令進行:

use mysql;

delete from User where User="";

update User set Password=PASSWORD('newpassword') where User='root';

如果要對用戶所用的登錄終端進行限制,可以更新User表中相應用戶的Host字段,

在進行瞭以上更改後應重新啟動資料庫服務,此時登錄時可用如下類似命令:

mysql -uroot -p;

mysql -uroot -pnewpassword;

mysql mydb -uroot -p;

mysql mydb -uroot -pnewpassword;

上面命令參數是常用參數的一部分,詳細情況可參考文檔。此處的mydb是要登錄的

資料庫的名稱。

在進行開發和實際應用中,用戶不應該隻用root用戶進行連接資料庫,雖然使用

root用戶進行測試時很方便,但會給系統帶來重大安全隱患,也不利於管理技術的

提高。我們給一個應用中使用的用戶賦予最恰當的資料庫權限。如一個隻進行數據

插入的用戶不應賦予其刪除數據的權限。MySql的用戶管理是通過 User表來實現的

,添加新用戶常用的方法有兩個,一是在User表插入相應的數據行,同時設置相應

的權限;二是通過GRANT命令創建具有某種權限的用戶。其中GRANT的常用用法如下

grant all on mydb.* to NewUserName@HostName identified by "password" ;

grant usage on *.* to NewUserName@HostName identified by "password";

grant select,insert,update on mydb.* to NewUserName@HostName identified

by "password";

grant update,delete on mydb.TestTable to NewUserName@HostName identified

by "password";

若要給此用戶賦予他在相應對象上的權限的管理能力,可在GRANT後面添加WITH

GRANT OPTION選項。而對於用插入User表添加的用戶,Password字段應用PASSWORD

函數進行更新加密,以防不軌之人竊看密碼。對於那些已經不用的用戶應給予清除

,權限過界的用戶應及時回收權限,回收權限可以通過更新User表相應字段,也可

以使用REVOKE操作。

下面給出本人從其它資料()獲得的對常用權限的解釋:

全局管理權限:

FILE: 在MySQL伺服器上讀寫文件。

PROCESS: 顯示或殺死屬於其它用戶的服務線程。

RELOAD: 重載訪問控制表,刷新日志等。

SHUTDOWN: 關閉MySQL服務。

資料庫/數據表/數據列權限:

Alter: 修改已存在的數據表(例如增加/刪除列)和索引。

Create: 建立新的資料庫或數據表。

Delete: 刪除表的記錄。

Drop: 刪除數據表或資料庫。

INDEX: 建立或刪除索引。

Insert: 增加表的記錄。

Select: 顯示/搜尋表的記錄。

Update: 修改表中已存在的記錄。

特別的權限:

ALL: 允許做任何事(和root一樣)。

USAGE: 隻允許登錄–其它什麼也不允許做。

———————

MYSQL常用命令

有很多朋友雖然安裝好瞭mysql但卻不知如何使用它。在這篇文章中我們就從連接

MYSQL、修改密碼、增加用戶等方面來學習一些MYSQL的常用命令。

有很多朋友雖然安裝好瞭mysql但卻不知如何使用它。在這篇文章中我們就從

連接MYSQL、修改密碼、增加用戶等方面來學習一些MYSQL的常用命令。

一、連接MYSQL

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

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

首先在打開DOS窗口,然後進入目錄 mysqlbin,再鍵入命令mysql -uroot -p

,回車後提示你輸密碼,如果剛安裝好MYSQL,超級用戶root是沒有密碼的,故直

接回車即可進入到MYSQL中瞭,MYSQL的提示符是:mysql>

2、例2:連接到遠程主機上的MYSQL

假設遠程主機的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常用命令(下)

一、操作技巧

1、如果你打命令時,回車後發現忘記加分號,你無須重打一遍命令,隻要打

個分號回車就可以瞭。也就是說你可以把一個完整的命令分成幾行來打,完後用分

號作結束標志就OK。

2、你可以使用光標上下鍵調出以前的命令。但以前我用過的一個MYSQL舊版本

不支持。我現在用的是mysql-3.23.27-beta-win。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *