Mysql 學習筆記5 之 建立使用者

2022-03-06 06:33:08 字數 2653 閱讀 6586

1insert 語句

首先要知道mysql有個user表專門儲存使用者資訊的,按說可以直接向 mysql.user表中插入new user,但是因為字段比較多,外加一些未知的限制,很容易出錯 (至少我還沒嘗試成功);並且如果使用這種方法建立新使用者,必須執行 flush privileges 來告訴server to reload the grant tables。

相關:1) 基本語法:

建立使用者:

insert into mysql.user (host,user,password)->values('localhost','user_name',password('your_pwd'));->flush privileges;
//提示錯誤 ssl_cipher 沒有預設值,但是查詢user表 屬性是可為null;按照官方文件設定相應字段還是提示column count doesn't match value count at row 1 。

授予許可權:

insert into db->(host,db,user,select_priv,insert_priv,->update_priv,delete_priv,create_priv,drop_priv)->values('localhost','database_name','user_name',->'y','y','y','y','y','y');

->flush privileges;

2)user表:

>desc mysql.user;  //檢視表結構

>select * from mysql.user;  //檢視所有的使用者

>select current_user;   //檢視當前使用者和主機名

2create/grant 語句

以 root身份登陸,建立新使用者:

使用者名為dbuser_name,密碼為user_pwd

>mysql -u root -p

[input password]

建立+賦權的標準語法:grant select,insert,update,delete on 資料庫.*  to 使用者名稱@登陸主機 identified by 'your_pwd'

>grant all on*.*to dbuser_name@"%"

identified by '[user_pwd]'

>grant all privileges on*.*to dbuser_name@localhost   dentified by '[user_pwd]'

或分開》

create user

'使用者名稱'@'主機名'  identified by 'your_pwd';

>grant all/[privileges] on 資料庫名.* to 使用者名稱@'主機名' ;   //即允許某些ip位址的主機(可為遠端的主機)通過某使用者和密碼對mysql server上某資料庫進行某些許可權的訪問和操作,其中privileges包括select,insert,update,delete,create,drop

ps:關於主機名的萬用字元

%:指允許任何ip位址的主機訪問mysql server

172.1.1.%或%.mydomain.com :只允許匹配的主機訪問mysql

localhost:只允許本機訪問

附:遠端訪問

1)server端建立使用者和資料庫和允許訪問的主機(如上);關閉防火牆或其他可能限制訪問的設定

2)要進行遠端訪問的本機安裝mysql(或client工具);安裝myodbc驅動並做相關配置

3)mysql環境下進行遠端訪問  (>mysql  -h [要訪問的mysql server的ip]  -u [user_name] -p [password] )

3新使用者登入

cmd路徑:

c:\mysql\bin\mysql -h 伺服器ip  -u dbuser_name -p

[input password]

>create database database_name;

>create table table_name;

4修改使用者密碼(root使用者下)

mysql>update mysql.user set password=password('新密碼') where user="user_name" and host="localhost"

mysql>flush privileges;

5刪除使用者(在root使用者下,保證具有刪除許可權)

mysql>delete from mysql.user where user="使用者名稱" and host="主機名";

官方文件參考

mysql學習筆記之十三(使用者變數)

在mysql中,你可以將select語句的返回值賦給乙個使用者自定義變數,並且可以在你之後的mysql會話中使用該變數。這為儲存一條語句的返回結果然後在其他的語句中引用,提供了乙個方便的途徑。首先,讓我們看一下在select語句中賦值給使用者變數的語法 var name value 下面是乙個先在s...

mysql 建立使用者指令碼 Mysql使用者建立指令碼

我試圖自動化mysql使用者建立過程。我想到建立乙個包含mysql使用者建立語句的臨時檔案,那麼我會這樣稱呼 mysql u root proot 這裡是我的臨時檔案的內容 drop database if exists mytestdatabase create database mytestda...

2 筆記 MySQL學習 建立使用者及建立連線

2.筆記 mysql學習 建立使用者及建立連線 建立使用者如下 先用root登陸,如下 root使用者密碼修改命令如 setpassword for root localhost password ttssssi mysql u root p 然後建立使用者如下 mysql create user ...