整理的mysql基礎操作命令

mysql基礎命令操作

1、連接mysql

mysql -u username(root) -p

輸入密碼,連接mysql

2、創建數據庫

create database yiqing;

查看是否創建成功

show databases;

3、在數據庫中建表

use yiqing;(切換到要建表的數據庫)

create tablename (id varchar(20) NOT NULL,name varchar(10) NOT NULL);

增加表字段

alter table tablename add newcol varchar

如 alter table ship add tel varcha(11);

4、增加用戶

grant 權限(select insert update ) on 數據庫.* to 用戶名@登錄主機 identified by “密碼”;


4.1、增加一個用戶test1密碼爲abc,讓他可以在任何主機上登錄,並對所有數據庫有查詢、插入、修改、刪除的權限。

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

4.2、增加一個用戶test2密碼爲abc,讓他只可以在localhost上登錄,並可以對數據庫mydb進行查詢、插入、修改、刪除的操作

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


5、創建數據庫  create database <數據庫名>


5.1  建立一個名爲yihua的數據庫

create database yihua;

5.2  創建數據庫並分配用戶

create database yihua;

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON yihua.* TO yihua@localhost IDENTIFIED BY '密碼';

    SET PASSWORD FOR 'yihua'@'localhost' = OLD_PASSWORD('密碼');

依次執行3個命令完成數據庫創建。注意:中文 “密碼”和“數據庫”是戶自己需要設置的。


6、 刪除數據庫  drop database <數據庫名>

6.1 刪除一個已經確定存在的數據庫

mysql> drop database drop_database;

6.2 刪除一個不確定存在的數據庫

  mysql> drop database drop_database;

  ERROR 1008 (HY000): Can't drop database 'drop_database'; database doesn't exist

     //發生錯誤,不能刪除'drop_database'數據庫,該數據庫不存在。

  mysql> drop database if exists drop_database;

  Query OK, 0 rows affected, 1 warning (0.00 sec)//產生一個警告說明此數據庫不存在

  mysql> create database drop_database;

  Query OK, 1 row affected (0.00 sec)

  mysql> drop database if exists drop_database;//if exists 判斷數據庫是否存在,不存在也不產生錯誤

  Query OK, 0 rows affected (0.00 sec)

7、創建表

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));


8、刪除表 drop table <表名>

刪除表名爲 MyClass 的表

  mysql> drop table MyClass;


DROP TABLE用於取消一個或多個表。您必須有每個表的DROP權限。所有的表數據和表定義會被取消,所以使用本語句要小心!


注意:對於一個帶分區的表,DROP TABLE會永久性地取消表定義,取消各分區,並取消儲存在這些分區中的所有數據。DROP TABLE還會取消與被取消的表有關聯的分區定義(.par)文件。


對與不存在的表,使用IF EXISTS用於防止錯誤發生。當使用IF EXISTS時,對於每個不存在的表,會生成一個NOTE。


9、插入表數據  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);


注意:insert into每次只能向表中插入一條記錄。


10、備份數據庫

命令在DOS的[url=file://\\mysql\\bin]\\mysql\\bin[/url]目錄下執行


1.導出整個數據庫

導出文件默認是存在mysql\bin目錄下

   mysqldump -u 用戶名 -p 數據庫名 > 導出的文件名

   mysqldump -u user_name -p123456 database_name > outfile_name.sql


2.導出一個表

   mysqldump -u 用戶名 -p 數據庫名 表名> 導出的文件名

   mysqldump -u user_name -p database_name table_name > outfile_name.sql


3.導出一個數據庫結構

   mysqldump -u user_name -p -d –add-drop-table database_name > outfile_name.sql

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


4.帶語言參數導出

   mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk –skip-opt database_name > outfile_name.sql


例如,將aaa庫備份到文件back_aaa中:

  [root@test1 root]# cd /home/data/mysql

  [root@test1 mysql]# mysqldump -u root -p --opt aaa > back_aaa


11、實例

11.1

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

); //建表結束


//以下爲插入字段

insert into teacher values('''',''glchengang'',''深圳一中'',''1976-10-10'');

insert into teacher values('''',''jack'',''深圳一中'',''1975-12-23'');


注:在建表中

1、將ID設爲長度爲3的數字字段:int(3);並讓它每個記錄自動加一:auto_increment;並不能爲空:not null;而且讓他成爲主字段primary key。


2、將NAME設爲長度爲10的字符字段


3、將ADDRESS設爲長度50的字符字段,而且缺省值爲深圳。


4、將YEAR設爲日期字段。


11.2

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

); //建表結束


//以下爲插入字段

insert into teacher values(”,’allen’,'大連一中’,'1976-10-10′);

insert into teacher values(”,’jack’,'大連二中’,'1975-12-23′);


如果你在mysql提示符鍵入上面的命令也可以,但不方便調試。

1、你可以將以上命令原樣寫入一個文本文件中,假設爲school.sql,然後複製到c:\\下,並在DOS狀態進入目錄[url=file://\\mysql\\bin]\\mysql\\bin[/url],然後鍵入以下命令:

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

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


2、或者進入命令行後使用 mysql> source c:\\school.sql; 也可以將school.sql文件導入數據庫中。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章