mysql創建用戶之授權登錄兩台服務器,mysql創建用戶和授權

本文目錄一覽:

怎麼創建一個mysql用戶並遠程訪問

第一步:安裝MySQL客戶端

當然你得確保MySQL客戶端已經安裝完畢。如果沒有的話,可以按照下面的方法。

在Debian,Ubuntu 或者 Linux Mint上:

$ sudo apt-get install mysql-client

$ sudo apt-get install mysql

第二步:登陸到MySQL服務器

首先,你需要使用root用戶登陸進你的MySQL數據庫,如下:

$ mysql -u root -h -p

請注意:為了能登進遠程的MySQL服務器,你需要開啟服務器上的遠程訪問,如果你想調用同一主機上的MySQL服務器,你可以省略 “-h ” 參數

$ mysql -u root -p

你將需要輸入MySQL服務器的密碼,如果認證成功,MySQL提示將會出現。

第三步:創建一個MySQL數據庫

在MySQL提示中輸入命令之前,請記住所有的命令都是以分號結束的(否則將不會執行)。另外,考慮輸入命令的時候使用大些字母,輸入數據庫對象使用小寫字母。但那不是必須的,只是方便的閱讀。

現在,創建一個叫做xmodulo_DB的數據庫:

mysql CREATE DATABASE IF NOT EXISTS xmodulo_DB;

第四步:創建一個數據庫表

為了達到演示的目的,創建一個叫做posts_tbl的表,表裡會存儲關於文章的如下信息:

文章的標題

作者的名字

作者的姓

文章可用或者不可用

文章創建的日期

這個過程分兩步執行:

首先,選擇需要使用的數據庫:

mysql USE xmodulo_DB;

然後,在數據庫中創建新表:

mysql CREATE TABLE ‘posts_tbl’ (

‘post_id’ INT UNSIGNED NOT NULL AUTO_INCREMENT,

‘content’ TEXT,

‘author_FirstName’ VARCHAR(100) NOT NULL,

‘author_LastName’ VARCHAR(50) DEFAULT NULL ,

‘isEnabled’ TINYINT(1) NOT NULL DEFAULT 1,

‘date’ TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,

PRIMARY KEY ( ‘post_id’ )

TYPE = MYISAM;

第五步:創建一個用戶,並授予權限

當涉及到訪問新創的數據庫和表的時候,創建一個新用戶是一個很好的主意。這樣做就可以讓用戶在沒有整個MySQL服務器權限的情況下,去訪問那個數據庫(而且只能是那個數據庫)

你可以創建新用戶,授予權限,並且使改變生效:

mysql GRANT ALL PRIVILEGES ON xmodulo_DB.* TO ‘new_user’@’%’ IDENTIFIED BY ‘new_password’;

mysql FLUSH PRIVILEGES;

‘newuser’和’newpassword’分別指的是新的用戶名和他的密碼。這條信息將會被保存在mysql.user表中,而且密碼會被加密。

第六步:測試

先插入一個虛擬的記錄到posts_tbl表:

mysql USE xmodulo_DB;

mysql INSERT INTO posts_tbl (content, author_FirstName, author_Las tName)

VALUES (‘Hi! This is some dummy text.’, ‘Gabriel’, ‘Canepa’);

然後查看posts_tbl表中的所有記錄:

mysql SELECT * FROM posts_tbl;

注意:MySQL會在先前定義的地方自動插入適當的默認值(比如,’isEnabled’和’date’)。

如何給MySql創建連接用戶並授權

一般在為MySql創建用戶時建議使用GRANT前台命令,當然如果對我們開發者而言,方法還有很多種,比如使用INSERT命令,甚至是直接修改mysql user數據表,但仍然建議按照MySQL規範去授權賬戶。因為它太容易忘記,特別整理方便參考。

1、登錄MySQL

輸入mysql -u root和密碼即可登錄到Mysql。

2、選擇數據庫

語句如下:use mysql;

3、在mysql的user表中增加連接用戶

GRANT USAGE ON *.* TO ‘username’@’localhost’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;

其中:

「username」替換為將要授權的用戶名,比如clientusr;

「password」替換為clientusr設置的密碼;

4、可訪問數據表授權

創建好帳戶之後,就開始給上面的common user進行數據表授權,步驟3中增加的連接用戶默認權限都是「N」的,必須在db表中為該帳戶授權,允許其訪問專用數據庫,當然超級用戶就不說了。

使用下面語句:

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON dbx.* TO ‘username’@’localhost’ IDENTIFIED BY ‘password’;

本語句中的權限根據實際需要確定:

“dbx”替換為授權訪問的數據庫名,如果只給某張表授權:dbx.tablename

“username”是步驟2授權用戶名

“password”是步驟2授權用戶的設置密碼

這樣就為該用戶授予了對某數據表的SELECT, INSERT, UPDATE, DELETE, CAREATE, DROP權限。

5、生效授權,創建完畢

FLUSH PRIVILEGES;

備註:

1、不要直接使用INSERT語句添加user記錄,使用INSERT可能出現:ERROR 1364 (HY000): Field ‘ssl_cipher’ doesn’t have a default value錯誤。不過早期的MYSQL版本筆者倒沒出現這個錯誤,因為天緣一直都是直接修改user表或直接使用INSERT語句完成,後來升級MYSQL到5.1的時候,發現可能會出現這個錯誤。

2、上文3和4,也可使用一句話GRANT ALL ON tbx.* TO ‘username’ IDENTIFIED BY ‘password’,這句話會自動創建username並為之授權。更多授權權限可參考MYSQL官方網站。

mysql如何創建新用戶

MySql中添加用戶,新建數據庫,用戶授權,刪除用戶,修改密碼(注意每行後邊都跟個;表示一個命令語句結束):

1.新建用戶

1.1 登錄MYSQL:

@mysql -u root -p

@密碼

1.2 創建用戶:

mysql insert into mysql.user(Host,User,Password) values(“localhost”,”test”,password(“1234”));

這樣就創建了一個名為:test 密碼為:1234 的用戶。

注意:此處的”localhost”,是指該用戶只能在本地登錄,不能在另外一台機器上遠程登錄。如果想遠程登錄的話,將”localhost”改為”%”,表示在任何一台電腦上都可以登錄。也可以指定某台機器可以遠程登錄。

1.3 然後登錄一下:

mysqlexit;

@mysql -u test -p

@輸入密碼

mysql登錄成功

2.為用戶授權

授權格式:grant 權限 on 數據庫.* to 用戶名@登錄主機 identified by “密碼”; 

2.1 登錄MYSQL(有ROOT權限),這裡以ROOT身份登錄:

@mysql -u root -p

@密碼

2.2 首先為用戶創建一個數據庫(testDB):

mysqlcreate database testDB;

2.3 授權test用戶擁有testDB數據庫的所有權限(某個數據庫的所有權限):

mysqlgrant all privileges on testDB.* to test@localhost identified by ‘1234’;

mysqlflush privileges;//刷新系統權限表

格式:grant 權限 on 數據庫.* to 用戶名@登錄主機 identified by “密碼”; 

2.4 如果想指定部分權限給一用戶,可以這樣來寫:

mysqlgrant select,update on testDB.* to test@localhost identified by ‘1234’;

mysqlflush privileges; //刷新系統權限表

2.5 授權test用戶擁有所有數據庫的某些權限:  

mysqlgrant select,delete,update,create,drop on *.* to test@”%” identified by “1234”;

//test用戶對所有數據庫都有select,delete,update,create,drop 權限。

  //@”%” 表示對所有非本地主機授權,不包括localhost。(localhost地址設為127.0.0.1,如果設為真實的本地地址,不知道是否可以,沒有驗證。)

 //對localhost授權:加上一句grant all privileges on testDB.* to test@localhost identified by ‘1234’;即可。

mysql服務器互為主從怎麼配置

 1、修改MySQL配置文件

兩台MySQL均如要開啟binlog日誌功能,開啟方法:在MySQL配置文件[MySQLd]段中加上log-bin=MySQL-bin選項

兩台MySQL的server-ID不能一樣,默認情況下兩台MySQL的serverID都是1,需將其中一台修改為2即可

2、將192.168.1.201設為192.168.1.202的主服務器

在192.168.1.201上新建授權用戶

mysql怎麼創建新用戶並賦權

進入到mysql安裝目錄的bin目錄下。

在此處打開命令行。或者是切換到該目錄下。

命令:C:\mysql\bin

使用root用戶登錄數據。

命令:mysql -uroot -p

登錄成功之後。開始創建用戶。

命令: create user’rsm’@’localhost’IDENTIFIED BY’123456′;

給該用戶賦權:

使用命令:

GRANT ALL ON *.* TO ‘rsm’@’%’;

賦權成功後。退出當前用戶。使用新創建用戶登錄。

如何在MySQL中創建用戶以及授權

mysql中可以給你一個用戶授予如select,insert,update,delete等其中的一個或者多個權限,主要使用grant命令

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/303191.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-31 11:49
下一篇 2024-12-31 11:49

相關推薦

  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • 服務器安裝Python的完整指南

    本文將為您提供服務器安裝Python的完整指南。無論您是一位新手還是經驗豐富的開發者,您都可以通過本文輕鬆地完成Python的安裝過程。以下是本文的具體內容: 一、下載Python…

    編程 2025-04-29
  • STUN 服務器

    STUN 服務器是一個網絡服務器,可以協助網絡設備(例如 VoIP 設備)解決 NAT 穿透、防火牆等問題,使得設備可以正常地進行數據傳輸。本文將從多個方面對 STUN 服務器做詳…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • 解決docker-compose 容器時間和服務器時間不同步問題

    docker-compose是一種工具,能夠讓您使用YAML文件來定義和運行多個容器。然而,有時候容器的時間與服務器時間不同步,導致一些不必要的錯誤和麻煩。以下是解決方法的詳細介紹…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • Python中接收用戶的輸入

    Python中接收用戶的輸入是一個常見的任務,可以通過多種方式來實現。本文將從以下幾個方面對Python中接收用戶的輸入做詳細闡述。 一、使用input函數接收用戶輸入 Pytho…

    編程 2025-04-29
  • Python彈框讓用戶輸入

    本文將從多個方面對Python彈框讓用戶輸入進行闡述,並給出相應的代碼示例。 一、Tkinter彈窗 Tkinter是Python自帶的圖形用戶界面(GUI)庫,通過它可以創建各種…

    編程 2025-04-28
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28
  • Zookeeper ACL 用戶 anyone 全面解析

    本文將從以下幾個方面對Zookeeper ACL中的用戶anyone進行全面的解析,並為讀者提供相關的示例代碼。 一、anyone 的作用是什麼? 在Zookeeper中,anyo…

    編程 2025-04-28

發表回復

登錄後才能評論