mysql 建庫許可權 MySQL許可權分配

2021-10-17 13:17:39 字數 4050 閱讀 6551

第一招、mysql服務的啟動和停止

net stop mysql

net start mysql

第二招、登陸mysql

語法如下: mysql -u使用者名稱 -p使用者密碼

鍵入命令mysql -uroot -p, 回車後提示你輸入密碼,輸入12345,然後回車即可進入到mysql中了,mysql的提示符是:

mysql>

注意,如果是連線到另外的機器上,則需要加入乙個引數-h機器ip

第三招、增加新使用者

格式:grant 許可權 on 資料庫.* to 使用者名稱@登入主機 identified by "密碼"

如,增加乙個使用者user1密碼為password1,讓其可以在本機上登入, 並對所有資料庫有查詢、插入、修改、刪除的許可權。首先用以root使用者連入mysql,然後鍵入以下命令:

grant select,insert,update,delete on *.* to user1@localhost identified by "password1";

如果希望該使用者能夠在任何機器上登陸mysql,則將localhost改為"%"。

如果你不想user1有密碼,可以再打乙個命令將密碼去掉。

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

第四招: 運算元據庫

登入到mysql中,然後在mysql的提示符下執行下列命令,每個命令以分號結束。

1、 顯示資料庫列表。

show databases;

預設有兩個資料庫:mysql和test。 mysql庫存放著mysql的系統和使用者許可權資訊,我們改密碼和新增使用者,實際上就是對這個庫進行操作。

2、 顯示庫中的資料表:

use mysql;

show tables;

3、 顯示資料表的結構:

describe 表名;

4、 建庫與刪庫:

create database 庫名;

drop database 庫名;

5、 建表:

use 庫名;

create table 表名(字段列表);

drop table 表名;

6、 清空表中記錄:

delete from 表名;

7、 顯示表中的記錄:

select * from 表名;

第五招、匯出和匯入資料

1. 匯出資料:

mysqldump --opt test > mysql.test

即將資料庫test資料庫匯出到mysql.test檔案,後者是乙個文字檔案

如:mysqldump -u root -p123456 --databases dbname > mysql.dbname

就是把資料庫dbname匯出到檔案mysql.dbname中。

2. 匯入資料:

mysqlimport -u root -p123456 < mysql.dbname。

不用解釋了吧。

3. 將文字資料匯入資料庫:

文字資料的字段資料之間用tab鍵隔開。

use test;

load data local infile "檔名" into table 表名;

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), *** 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 ***="f" where name='hyq';

13:備份資料庫

mysqldump -u root 庫名》***.data

14:例2:連線到遠端主機上的mysql

假設遠端主機的ip為:110.110.110.110,使用者名為root,密碼為abcd123。則鍵入以下命令:

mysql -h110.110.110.110 -uroot -pabcd123

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

3、退出mysql命令: exit (回車)

mysql的許可權系統圍繞著兩個概念:

1:認證->確定使用者是否允許連線資料庫伺服器

2:授權->確定使用者是否擁有足夠的許可權執行查詢請求等。

顯然從上面可知,如果認證不成功的話,哪麼授權肯定是無法進行的。在這裡我們要關注兩個表,分別是在mysql資料庫中user表和db表。

user表在某種程度上是獨一無二的,因為它是唯一乙個在許可權請求的認證和授權階段都起作用的表,也是唯一乙個存數mysql伺服器相關許可權的許可權表。在認證階段,它只是負責為使用者授權訪問mysql伺服器,確定使用者每小時的最大連線數和最大併發數;在授權階段,user確定允許訪問伺服器的使用者是否被賦予了運算元據庫的全域性許可權,確定使用者每小時的最大查詢數和更新數。

db表用於為每個使用者針對每個資料庫賦予許可權。具體的可以檢視db的字段。

使用者和許可權管理命令:

create user :用於建立新的使用者賬戶(從5.0版本開始有這個命令),在建立這個使用者的時候不分配任何許可權,需要在建立之後通過grant命令來給改使用者分配相應的許可權。

eg:create user guest@localhost identified by '123456';

grant select on mydb.* to guest@localhost;

drop user:刪除乙個使用者賬戶(注意在4.1.1版本之前只能刪除沒有任何許可權的賬戶,5.0.2之後可以刪除任何賬戶)

eg:drop user guest;

rename user:可以實現重新命名乙個使用者賬號。

grant:用於管理訪問許可權,也就是給使用者賬號授權。當然它同樣可以建立乙個新的使用者賬戶。

eg:grant select, insert, update, delete on new_db.* to guest@'%' identified by '88888888';

grant 許可權 on 資料庫.表 to 使用者 @ 訪問方式 identified by 密碼

grant select on mydb.* to guest@localhost identified by '123456';

btw:如果需要乙個空密碼或者無密碼的賬戶,必須先用create user命令,然後通過

grant來分配許可權。如果如下操作:

grant all privileges on mydb.* to visitor@'%' ;而在資料庫user表中沒有先建立visitor

使用者,則會發生1133錯誤"can't find any matching row in the user table"。grant只能創

有密碼的賬戶。

revoke:刪除乙個賬戶,具體檢視mysql的文件。

MySQL要建庫 mysql怎麼建庫

mysql建庫的方法 2 檢視當前所有的資料庫 show databases 3 建立資料庫 create database 資料庫名稱 這裡建立了test db資料庫,然後用1命令檢視所有資料庫 4 到這裡資料庫建立完畢了,接下來就是建立資料庫表,比如我們在test db中建立乙個為tb user...

mysql建立使用者表 mysql 建庫建表建使用者

1.建立資料庫 create database school 2.使用資料庫 use school 3.建立使用者 create user jame localhost identified by jame 4.授權使用者 注意這裡是用了 哦,可以自己講school也替換成 號 grant sele...

MYSQL建庫建使用者命令

1 登陸mysql mysql u root p 2 檢視使用者資訊 select user,host,password from mysql.user select user,host from mysql.user 3 設定密碼 set password for root localhost p...