MySQL 常用腳本
常用功能腳本
1 mysqldump -u 用戶名 -p –default-character-set=latin1 數據庫名 > 導出的文件名(數據庫默認編碼是latin1)
2
3 mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql??
2.導出一個表
1 mysqldump -u 用戶名 -p 數據庫名 表名> 導出的文件名
2
3 mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.導出一個數據庫結構
1 mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:wcnc_db.sql
2
3 -d 沒有數據 –add-drop-table 在每個create語句之前增加一個drop table
4.導入數據庫
1 A:常用source 命令
2
3 進入mysql數據庫控制臺,
4
5 如mysql -u root -p
6
7 mysql>use 數據庫
8
9 然后使用source命令,后面參數為腳本文件(如這里用到的.sql)
10
11 mysql>source wcnc_db.sql
12
13 B:使用mysqldump命令
14
15 mysqldump -u username -p dbname < filename.sql
16
17 C:使用mysql命令
18
19 mysql -u username -p -D dbname < filename.sql
啟動與退出?
庫操作?
表操作,操作之前應連接某個數據庫??
1、建表
1 命令:create table <表名> ( <字段名> <類型> [,..<字段名n> <類型n>]);
2
3 mysql> create table MyClass(
4
5 > id int(4) not null primary key auto_increment,
6
7 > name char(20) not null,
8
9 > sex int(4) not null default ’′,
10
11 > degree double(16,2));
2、獲取表結構
1 命令:desc 表名,或者show columns from 表名
2
3 mysql>DESCRIBE MyClass
4
5 mysql> desc MyClass;
6
7 mysql> show columns from MyClass;
3、刪除表
1 命令:drop table <表名>
2
3 例如:刪除表名為 MyClass 的表
4
5 mysql> drop table MyClass;
4、插入數據
1 命令:insert into <表名> [( <字段名>[,..<字段名n> ])] values ( 值 )[, ( 值n )]
2
3 例如,往表 MyClass中插入二條記錄, 這二條記錄表示:編號為的名為Tom的成績為.45, 編號為 的名為Joan 的成績為.99,編號為 的名為Wang 的成績為.5.
4
5 mysql> insert into MyClass values(1,’Tom’,96.45),(2,’Joan’,82.99), (2,’Wang’, 96.59);
5、查詢表中的數據
1 1)、查詢所有行
2
3 命令:select <字段,字段,...> from < 表名 > where < 表達式 >
4
5 例如:查看表 MyClass 中所有數據
6
7 mysql> select * from MyClass;
8
9 2)、查詢前幾行數據
10
11 例如:查看表 MyClass 中前行數據
12
13 mysql> select * from MyClass order by id limit 0,2;
14
15 或者:
16
17 mysql> select * from MyClass limit 0,2;
6、刪除表中數據
1 命令:delete from 表名 where 表達式
2
3 例如:刪除表 MyClass中編號為 的記錄
4
5 mysql> delete from MyClass where id=1;
7、修改表中數據:update 表名 set 字段=新值,…where 條件
1 mysql> update MyClass set name=’Mary’where id=1;
8、在表中增加字段:
1 命令:alter table 表名 add字段 類型 其他;
2
3 例如:在表MyClass中添加了一個字段passtest,類型為int(4),默認值為
4
5 mysql> alter table MyClass add passtest int(4) default ’′
6
9、更改表名:
1 命令:rename table 原表名 to 新表名;
2
3 例如:在表MyClass名字更改為YouClass
4
5 mysql> rename table MyClass to YouClass;
6
7 更新字段內容
8
9 update 表名 set 字段名 = 新內容
10
11 update 表名 set 字段名 = replace(字段名,’舊內容’, 新內容’)
12
13 update article set content=concat(‘ ’,content);
字段類型和數據庫操作
1 創建.sql文件
2
3 先產生一個庫如auction.c:mysqlbin>mysqladmin -u root -p create auction,會提示輸入密碼,然后成功創建。
4
5 導入auction.sql文件
6
7 c:mysqlbin>mysql -u root -p auction < auction.sql。
8
9 通過以上操作,就可以創建了一個數據庫auction以及其中的一個表auction。
8.修改數據庫
1 在mysql的表中增加字段:
2
3 alter table dbname add column userid int(11) not null primary key auto_increment;
4
5 這樣,就在表dbname中添加了一個字段userid,類型為int(11)。
9.mysql數據庫的授權
1 mysql>grant select,insert,delete,create,drop
2
3 on *.* (或test.*/user.*/..)
4
5 to 用戶名@localhost
6
7 identified by ‘密碼’;
8
9 如:新建一個用戶帳號以便可以訪問數據庫,需要進行如下操作:
10
11 mysql> grant usage
12
13 -> ON test.*
14
15 -> TO testuser@localhost;
16
17 Query OK, 0 rows affected (0.15 sec)
18
19 此后就創建了一個新用戶叫:testuser,這個用戶只能從localhost連接到數據庫并可以連接到test 數據庫。下一步,我們必須指定testuser這個用戶可以執行哪些操作:
20
21 mysql> GRANT select, insert, delete,update
22
23 -> ON test.*
24
25 -> TO testuser@localhost;
26
27 Query OK, 0 rows affected (0.00 sec)
28
29 此操作使testuser能夠在每一個test數據庫中的表執行SELECT,INSERT和DELETE以及UPDATE查詢操作。現在我們結束操作并退出MySQL客戶程序:
30
31 mysql> exit
DDL操作
文章轉自:?杰哥的IT之旅
(版權歸原作者所有,侵刪)