grant select,insert,update,delete on *.* to [email=test1@”%]test1@”%[/email]” Identified by “abc”;
但增加的用戶是十分危險的,你想如某個人知道test1的密碼,那么他就可以在internet上的任何一臺電腦上登錄你的mysql數(shù)據(jù)庫并對你的數(shù)據(jù)可以為所欲為了,解決辦法見2.2。
代碼如下:
grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “abc”;
代碼如下:
grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “”
三、操作數(shù)據(jù)庫
代碼如下:
mysql> create database xhkdb;
例2:創(chuàng)建數(shù)據(jù)庫并分配用戶
①CREATE DATABASE 數(shù)據(jù)庫名;
②GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON 數(shù)據(jù)庫名.* TO 用戶名@localhost IDENTIFIED BY '密碼';
③SET PASSWORD FOR '數(shù)據(jù)庫名'@'localhost' = OLD_PASSWORD('密碼');
依次執(zhí)行3個命令完成數(shù)據(jù)庫創(chuàng)建。
注意:中文 “密碼”和“數(shù)據(jù)庫”是戶自己需要設(shè)置的。
代碼如下:
mysql> show databases
mysql> drop database xhkdb;
例子1:刪除一個已經(jīng)確定存在的數(shù)據(jù)庫
代碼如下:
mysql> drop database drop_database;
Query OK, 0 rows affected (0.00 sec)
例子2:刪除一個不確定存在的數(shù)據(jù)庫
mysql> drop database drop_database; ERROR 1008 (HY000): Can't drop database 'drop_database'; database doesn't exist //發(fā)生錯誤,不能刪除'drop_database'數(shù)據(jù)庫,該數(shù)據(jù)庫不存在。 mysql> drop database if exists drop_database; Query OK, 0 rows affected, 1 warning (0.00 sec)//產(chǎn)生一個警告說明此數(shù)據(jù)庫不存在 mysql> create database drop_database; Query OK, 1 row affected (0.00 sec) mysql> drop database if exists drop_database;//if exists 判斷數(shù)據(jù)庫是否存在,不存在也不產(chǎn)生錯誤 Query OK, 0 rows affected (0.00 sec)
代碼如下:
mysql> drop table MyClass;
DROP TABLE用于取消一個或多個表。您必須有每個表的DROP權(quán)限。所有的表數(shù)據(jù)和表定義會被取消,所以使用本語句要小心!
注意:對于一個帶分區(qū)的表,DROP TABLE會永久性地取消表定義,取消各分區(qū),并取消儲存在這些分區(qū)中的所有數(shù)據(jù)。DROP TABLE還會取消與被取消
的表有關(guān)聯(lián)的分區(qū)定義(.par)文件。
對與不存在的表,使用IF EXISTS用于防止錯誤發(fā)生。當(dāng)使用IF EXISTS時,對于每個不存在的表,會生成一個NOTE。
RESTRICT和CASCADE可以使分區(qū)更容易。目前,RESTRICT和CASCADE不起作用。
代碼如下:
UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition] [ORDER BY ...] [LIMIT row_count]
代碼如下:
UPDATE [LOW_PRIORITY] [IGNORE] table_references SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition]
代碼如下:
mysql> rename table MyClass to YouClass;
五、備份數(shù)據(jù)
命令在DOS的[url=file://\\mysql\\bin]\\mysql\\bin[/url]目錄下執(zhí)行
代碼如下:
[root@test1 root]# cd /home/data/mysql
[root@test1 mysql]# mysqldump -u root -p --opt aaa > back_aaa
六、一個完整的數(shù)據(jù)庫創(chuàng)建實例
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 ); //建表結(jié)束 //以下為插入字段 insert into teacher values('''',''glchengang'',''深圳一中'',''1976-10-10''); insert into teacher values('''',''jack'',''深圳一中'',''1975-12-23'');
注:在建表中
(1)、將ID設(shè)為長度為3的數(shù)字字段:int(3);并讓它每個記錄自動加一:auto_increment;并不能為空:not null;而且讓他成為主字段primary key。
(2)、將NAME設(shè)為長度為10的字符字段
(3)、將ADDRESS設(shè)為長度50的字符字段,而且缺省值為深圳。
如果你在mysql提示符鍵入上面的命令也可以,但不方便調(diào)試。
(1)、你可以將以上命令原樣寫入一個文本文件中,假設(shè)為school.sql,然后復(fù)制到c:\\下,并在DOS狀態(tài)進(jìn)入目錄[url=file://\\mysql\\bin]\
\mysql\\bin[/url],然后鍵入以下命令:mysql -uroot -p密碼 < c:\\school.sql
如果成功,空出一行無任何顯示;如有錯誤,會有提示。(以上命令已經(jīng)調(diào)試,你只要將//的注釋去掉即可使用)。
(2)、或者進(jìn)入命令行后使用 mysql> source c:\\school.sql; 也可以將school.sql文件導(dǎo)入數(shù)據(jù)庫中。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com