Hadoop集群(第10期副刊)_常用MySQL數據庫命令


1、系統管理

1.1 連接MySQL

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

  舉例

  例1:連接到本機上的MySQL。

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

  例2:連接到遠程主機上的MYSQL。假設遠程主機的IP為:110.110.110.110,用戶名為root,密碼為abcd123。則鍵入以下命令:

 

mysql -h 110.110.110.110 -u root –p abcd123

 

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

  退出MySQL命令: exit (回車)。

1.2 修改新密碼

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

  舉例

  例1:給root加個密碼ab12。首先在DOS下進入目錄mysqlbin,然后鍵入以下命令:

 

mysqladmin -u root -password ab12

 

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

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

 

mysqladmin -u root -p ab12 password djg345

 

1.3 增加新用戶

  備注:和上面不同,下面的因為是MySQL環境中的命令,所以后面都帶一個分號";"作為命令結束符。

  格式:grant select on 數據庫.* to 用戶名@登錄主機 identified by '密碼'

  舉例

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

 

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

 

  或者

 

grant all privileges on *.* to test2@localhost identified by 'abc';

 

  然后刷新權限設置。

 

flush privileges;

 

  例2:如果你不想test2有密碼操作數據庫"mydb"里的數據表,可以再打一個命令將密碼消掉。

 

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

 

1.4 啟動停止MySQL

  1)Windows環境下

  首先進入DOS環境,然后進行下面操作。

  • 啟動服務

 

net start mysql

 

  • 停止服務

 

net stop mysql

 

  2)Linux環境下

  • 啟動服務

 

service mysql start

 

  • 停止服務

 

service mysql stop

 

2、數據庫操作

2.1 庫操作

  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)

 

2.2 表操作

  備注:操作之使用"use <數據庫名>"應連接某個數據庫。

 

  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)查詢表中的數據

  • 查詢所有行

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

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

 

mysql> select * from MyClass;

 

  • 查詢前幾行數據

  例如:查看表 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;

 

  8)在表中增加字段

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

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

 

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

 

  9)更改表名

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

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

 

mysql> rename table MyClass to YouClass;

 

  10)更新字段內容

  命令:update 表名 set 字段名 = 新內容

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

  例如:文章前面加入4個空格

 

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

 

3、數據庫導入導出

3.1 從數據庫導出數據庫文件

  使用"mysqldump"命令

  首先進入DOS界面,然后進行下面操作。

  1)導出所有數據庫

  格式:mysqldump -u [數據庫用戶名] -p -A>[備份文件的保存路徑]

  2)導出數據和數據結構

  格式:mysqldump -u [數據庫用戶名] -p [要備份的數據庫名稱]>[備份文件的保存路徑]

  舉例

  例1:將數據庫mydb導出到e:\MySQL\mydb.sql文件中。

  打開開始à運行à輸入"cmd",進入命令行模式。

 

c:\> mysqldump -h localhost -u root -p mydb >e:\MySQL\mydb.sql

 

  然后輸入密碼,等待一會導出就成功了,可以到目標文件中檢查是否成功。

  例2:將數據庫mydb中的mytable導出到e:\MySQL\mytable.sql文件中。

 

c:\> mysqldump -h localhost -u root -p mydb mytable>e:\MySQL\mytable.sql

 

  例3:將數據庫mydb的結構導出到e:\MySQL\mydb_stru.sql文件中。

 

c:\> mysqldump -h localhost -u root -p mydb --add-drop-table >e:\MySQL\mydb_stru.sql

 

  備注:-h localhost可以省略,其一般在虛擬主機上用。

  3)只導出數據不導出數據結構

  格式:mysqldump -u [數據庫用戶名] -p -t [要備份的數據庫名稱]>[備份文件的保存路徑]

  4)導出數據庫中的Events

  格式:mysqldump -u [數據庫用戶名] -p -E [數據庫用戶名]>[備份文件的保存路徑]

  5)導出數據庫中的存儲過程和函數

  格式:mysqldump -u [數據庫用戶名] -p -R [數據庫用戶名]>[備份文件的保存路徑]

3.2 從外部文件導入數據庫中

  1)使用"source"命令

  首先進入"mysql"命令控制台,然后創建數據庫,然后使用該數據庫。最后執行下面操作。

 

mysql>source [備份文件的保存路徑]

 

  2)使用"<"符號

  首先進入"mysql"命令控制台,然后創建數據庫,然后退出MySQL,進入DOS界面。最后執行下面操作。

 

mysql -u root –p < [備份文件的保存路徑]

 

  文章下載地址:http://files.cnblogs.com/xia520pi/HadoopCluster_Vol.10S.rar

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM