久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

如何從CLI管理MySQL數據庫

166次閱讀
沒有評論

共計 7215 個字符,預計需要花費 19 分鐘才能閱讀完成。

這篇文章主要為大家展示了“如何從 CLI 管理 MySQL 數據庫”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓丸趣 TV 小編帶領大家一起研究并學習一下“如何從 CLI 管理 MySQL 數據庫”這篇文章吧。

先決條件

在開始之前,請確保您具有以下內容:

有效的阿里云帳戶。

運行操作系統(例如 Ubuntu 或 Centos)和 MySQL 數據庫服務器或 ApsaraDB for RDS 實例的 ECS 實例。您可以選擇這兩種配置中的任何一種。

如果您使用的是 ApsaraDB,則使用 MySQL 主帳戶用戶名和密碼

如果已在 ECS 實例上部署 MySQL 數據庫,則具有 sudo 權限的非 root 用戶。

第 1 步:連接到您的 MySQL 實例

首先,如果要連接到 ApsaraDB for RDS,請確保已為計算機的 IP 地址創建了白名單組。

如果您從阿里巴巴 ECS 實例運行 MySQL,則需要使用服務器的公共 IP 地址與其進行 SSH 連接。

無論您的連接方法和產品類型如何(ApsaraDB 或帶有 MySQL 服務器的 ECS 實例),連接到 MySQL 的基本語法如下所示:

連接到 ECS 實例時的 MySQL 連接語法:

$ mysql -uroot -p

連接到 ApsaraDB for RDS 時的 MySQL 連接語法:

$ mysql -uroot -h -p

$ mysql -uroot -hserver -name .mysql.rds.aliyuncs.com -p

出現提示時輸入密碼,然后按 Enter 繼續:

第 2 步:在命令行上管理 MySQL 數據庫

一旦連接到 MySQL 數據庫,就可以執行 SQL(結構化查詢語言)命令來管理 MySQL 實例,包括創建;  用戶,數據庫,表,列 / 字段。您還可以在任何數據庫表上執行 CRUD(創建讀取更新和刪除)操作。

MySQL 顯示數據庫命令

您可以運行以下命令查看阿里巴巴 MySQL 服務器上的可用數據庫;

mysql  show databases ;
+ -------------------- +
|  數據庫  |
+ -------------------- +
| information_schema |
| mysql |
| performance_schema |
| sys |
+ -------------------- +
 4 行中   集合(0.01 秒)

MySQL 創建數據庫命令

要在您的阿里巴巴 MySQL 服務器上創建數據庫,請使用以下命令:

mysql  create database test1;

請記住將“sample2”替換為數據庫的首選名稱。

在 MySQL 中切換數據庫

您可以通過 use 命令在 MySQL 中從一個數據庫切換到另一個數據庫。例如,要切換到上面創建的數據庫,請使用以下命令:

mysql   使用  test1

MySQL 創建表命令

切換到數據庫后,可以使用以下語法創建表;

mysql  create table (field1 數據類型,field2 數據類型)

MySQL 支持多種數據類型,您可以在此處參考完整列表

您應該根據應用程序的需要使用正確的數據類型。

例如,要創建一個名為 students 的表,其中包含兩個字段(student_id 和 student_name),我們可以使用以下語法:

mysql  CREATE TABLE 學生(id INT NOT NULL,student_name VARCHAR(30)NOT NULL);

MySQL Show Tables 命令

要查看所選數據庫中的所有表,請使用以下語法:

mysql  show tables ;
+ ----------------- +
| Tables_in_test1 |
+ ----------------- +
|  學生 |
+ ----------------- +
1  行   中   集合(0.01 秒)

MySQL 描述表命令

要獲取上面創建的表的結構,可以使用下面的 SQL 語句;

mysql   描述學生;
+ -------------- + ------------- + ------ + ----- + ------- - + ------- +
|  領域  |  輸入 |  空  |  鑰匙  |  默認  |  額外的 |
+ -------------- + ------------- + ------ + ----- + ------- - + ------- +
| id | int(11)|  沒有  | | NULL | |
| student_name | varchar(30)|  沒有  | | NULL | |
+ -------------- + ------------- + ------ + ----- + ------- - + ------- +
 2 排在   組(0.02 秒)

第 3 步:MySQL CRUD 操作

您可以通過命令行管理 MySQL 數據庫表上的記錄。CRUD 是 Create,Read,Update 和 Delete 的首字母縮寫。

在 MySQL 表中創建記錄

要在數據庫表中插入記錄,請使用以下語法:

 插入   到     表名稱(列 1,列 2,欄 3),值(column1value,column2value,column3value);

請注意列數和值應匹配。

例如,要在學生表中插入 3 個學生,我們可以使用以下 SQL 命令:

 的 MySQL   插入   到學生(ID,student_name)值(1  ,John Doe 的 
 查詢  OK,1  行受影響(0.02 秒)
 的 MySQL   插入   到學生(ID,student_name)值(2  ,理查德羅伊 
 查詢  OK,1  行受影響(0.01 秒)
 的 MySQL   插入   到學生(ID,student_name)值(3  ,Jane Doe 的 
 查詢  OK,1  行受影響(0.01 秒)

從 MySQL 表中檢索記錄

檢索記錄是 MySQL CRUD 操作的一部分。要讀取記錄,請使用 select 語句。

mysql   從表中選擇  column1,column2,..。columnx ;

例如,您可以使用以下命令從 student 表中檢索所有學生和所有列:

mysql  select * from students;
+ ---- + -------------- +
| id | student_name |
+ ---- + -------------- +
| 1 | John Doe
| 2 |  理查德羅 |
| 3 | Jane Doe |
+ ---- + -------------- +
 3 排在   組(0.02 秒)

有時,您可能只想從表中檢索某些列。例如,要檢索沒有名字的學生的 ID,我們可以使用以下語法:

mysql   從學生中選擇  id ;
+ ---- +
| id |
+ ---- +
| 1 |
| 2 |
| 3 |
+ ---- +
 3 排在   組(0.01 秒)

過濾記錄

您可以使用 where 子句在檢索記錄時過濾記錄。例如,您可以使用以下語法僅檢索 ID 為“2”的學生:

 的 MySQL   選擇  *  從學生其中  ID =  2  ;
+ ---- + -------------- +
| id | student_name |
+ ---- + -------------- +
| 2 |  理查德羅 |
+ ---- + -------------- +
1  行   中   集合(0.01 秒)

按升序或降序排序 MySQL 記錄

從阿里巴巴 MySQL 數據庫中檢索記錄時,您可能會覺得需要通過以下語法按升序或降序對它們進行排序:

mysql  SELECT 表達式 FROM  表  [ WHERE 條件] ORDER BY 表達式 [ ASC | DESC ];

使用上面的學生表,我們可以按字母順序排列學生的名字;

mysql  select * from students order by student_name asc ;
+ ---- + -------------- +
| id | student_name |
+ ---- + -------------- +
| 3 | Jane Doe |
| 1 | John Doe
| 2 |  理查德羅 |
+ ---- + -------------- +
 3 排在   組(0.01 秒)

編輯和更新 MySQL 記錄

在生產環境中,編輯和更新 MySQL 記錄是不可避免的。為此,請使用以下命令:

mysql   更新  table_name SET column1 = value1,column2 = value2 ... WHERE  條件  ;

例如,您可以使用以下 SQL 命令更新學生 ID“2”并將名稱更改為 James Smith:

mysql   更新學生設置  student_name =  James Smith  ,其中  id =  2  ;
 查詢  OK,1  行受影響(0.02 秒)
 匹配的行數:1  已更改:1  警告:0

如果再次運行 select 語句,您將看到學生名稱已成功更新:

mysql  select * from students;
+ ---- + -------------- +
| id | student_name |
+ ---- + -------------- +
| 1 | John Doe
| 2 |  詹姆斯史密斯 |
| 3 | Jane Doe |
+ ---- + -------------- +
 3 排在   組(0.02 秒)

從 MySQL 刪除表記錄

如果要從表中完全刪除記錄,請使用以下 SQL 語法:

mysql   從 table_name 中刪除  WHERE column = value

例如,您可以使用以下命令刪除 ID 為 3 的學生;

mysql   從  id =  3 的學生中刪除  ;
 查詢  OK,1  行受影響(0.02 秒)

從 MySQL 表中刪除所有記錄

如果您有大量記錄并且想要在單個命令中擦除整個表,請使用 truncate 語句:

mysql  truncate [  表名]

要刪除學生表中的所有記錄,請鍵入:

mysql   截斷學生;
 查詢正常,0 行受影響(0.02 秒)

如果您嘗試再次檢索記錄,MySQL 將顯示一個空集:

mysql  select * from students;
 空集(0.02 秒)

修改 MySQL 表中的列

您可以使用以下語法將列添加到現有表:

mysql  Alter table_name add [ column name] [ data type]

例如,要使用 Varchar 作為數據類型添加名為“class”的列,并將長度值 30 添加到學生的表中,請使用以下命令:

mysql  Alter  表學生添加類 Varchar(30);
 查詢正常,0 行受影響(0.02 秒)
 記錄:0 重復:0  警告:0

將主鍵添加到 MySQL 表

要唯一標識表中的每條記錄,應添加主鍵(PK)。您應該將它添加到最獨特的列中,不可能有重復項。

mysql  Alter  表   添加   主   鍵(column_name);

例如,在我們的學生表中,id 字段是唯一的,因為沒有兩個學生可以共享相同的標識號。

mysql  Alter  表學生添加   主   鍵(id);
 查詢正常,0 行受影響(0.02 秒)
 記錄:0 重復:0  警告:0

MySQL 自動增量字段

您可以指示 MySQL 使用“自動增量”功能自動為列分配序列號。例如,學生在入學時可以獲得身份證值。這將在數據庫表中添加后自動完成。

MySQL 自動增量具有以下語法:

mysql  Alter table [ table name]  修改   列  [ column name] auto_increment

要將其分配給學生表,請鍵入以下命令:

Mysql  Alter  表學生修改   列  id int auto_increment ;
 查詢正常,0 行受影響(0.02 秒)
 記錄:0 重復:0  警告:0

您可以使用 describe 語句檢查表的新結構以確認更改:

mysql   描述學生;
+ -------------- + ------------- + ------ + ----- + ------- - + ---------------- +
|  領域  |  輸入 |  空  |  鑰匙  |  默認  |  額外的 |
+ -------------- + ------------- + ------ + ----- + ------- - + ---------------- +
| id | int(11)|  沒有  | PRI | NULL | auto_increment |
| student_name | varchar(30)|  沒有  | | NULL | |
|  班級 | varchar(30)|  是的 | | NULL | |
+ -------------- + ------------- + ------ + ----- + ------- - + ---------------- +
 3 排在   組(0.01 秒)

刪除 MySQL 數據庫表

如果您不再需要數據庫中的表,請使用以下命令

mysql  Drop table table_name ;

刪除數據庫

要從 MySQL 服務器中完全刪除數據庫,請使用以下命令

mysql  drop database [database_name];

例:

mysql  drop database test1;

請注意:刪除表或數據庫是不可逆轉的;  您應首先備份數據庫以避免刪除錯誤的屬性,尤其是在生產環境中

第 4 步:管理 MySQL 數據庫用戶

您可以管理多個用戶并根據您希望他們在數據庫上執行的角色為其分配不同的權限。

列出 MySQL 數據庫用戶

您可以通過鍵入以下命令查看阿里巴巴 MySQL 數據庫中的可用用戶

mysql   從  mysql .user 中選擇   用戶,主機;
+ ----------------- + -------------- +
|  用戶  |  主持人 |
+ ----------------- + -------------- +
|  極光 | %|
| aurora_proxy | %|
|  根 | %|
| _rds_outer_user | 127.0。0.1 |
| aliyun_root | 127.0。0.1 |
| mysql .session | localhost |
+ ----------------- + -------------- +
 6 行中   集合(0.01 秒)

創建 MySQL 數據庫用戶

要創建 MySQL 數據庫用戶,請使用以下語法:

mysql   創建   用戶   [用戶名]   [主機名] 由 PASSWORD 標識  ;

請記住將“示例”替換為您的用戶名,并使用強大的密碼值。

mysql   創建   PASSWORD 標識的用戶   example_user  @ localhost  ;

如果您希望用戶從任何主機進行連接,請使用 % 代替 localhost。例如;

mysql   創建   PASSWORD 標識的用戶   example_user  @ %  ;

為 MySQL 用戶分配權限

權限是允許用戶在數據庫表中執行某些任務的權限。要為用戶分配權限,請使用以下語法:

mysql  GRANT   privileges   ON  property  TO user_name @ hostname  ;
mysql  FLUSH PRIVILEGES ;

您可以使用逗號組合多個權限,例如

mysql  GRANT  選擇,插入,刪除  ON TO user_name @  ;

要為用戶分配所有權限,請使用以下語法:

mysql  GRANT ALL ON *。* TO  [username]  @ [hostname]  ;
mysql  FLUSH PRIVILEGES ;

要將 MySQL 用戶的權限分配給特定數據庫,請使用以下語法:

mysql  GRANT ALL ON  database_name。* TO  [username]  @ [hostname]  ;
mysql  FLUSH PRIVILEGES ;

在 MySQL 上查看用戶授予的權限

要查看分配給用戶的授予權限,請使用以下語法:

 的 MySQL   顯示   補助   為  [用戶名]

例:

mysql  show grants for root;

|  資助   的根 @%
| GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,RELOAD,PROCESS,REFERENCES,INDEX,ALTER,CREATE TEMATEARY TABLES,LOCK TABLES,EXECUTE,REPLICATION SLAVE,REPLICATION CLIENT,CREATE VIEW,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,創建   用戶,事件,TRIGGER ON *。* TO  根  @  %  WITH GRANT OPTION |
+ - 1  行   中   集合(0.01 秒)

撤銷 MySQL 用戶的權限

如果您錯誤地分配了權限,或者您不再希望用戶在 MySQL 服務器上執行某些任務,則可以隨時撤銷 MySQL 用戶的權限。為此,請使用以下命令:

mysql   從 [username]   [hostname]   撤銷  *。*  上的  [權限] ;

您可以通過用逗號分隔多個權限來撤消它們:

 的 MySQL   撤銷   選擇,插入,刪除   上   從   [用戶名]  @  [主機名]  ;

要撤消所有權限,請使用以下語法:

MySQL 的   撤消   所有   權限   上  *。*  從   [用戶名]  @  [主機名]  ;

mysql   從 example_user  @ %   撤消   對  sample2。* 的所有   權限  。

刪除 MySQL 用戶

mysql  drop user  [username]  @ [hostname]  ;

例:

mysql   刪除   用戶   example_user  @ %  ;

以上是“如何從 CLI 管理 MySQL 數據庫”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-27發表,共計7215字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 仙桃市| 政和县| 岳普湖县| 天门市| 明光市| 久治县| 潞城市| 盖州市| 江城| 靖边县| 敦煌市| 江孜县| 枣庄市| 潜山县| 湟中县| 牙克石市| 定兴县| 北流市| 抚宁县| 潜山县| 昆明市| 秦皇岛市| 辉县市| 峨边| 长乐市| 资阳市| 道真| 精河县| 修水县| 东明县| 五华县| 商洛市| 道真| 巴中市| 淅川县| 卫辉市| 旅游| 双柏县| 巴楚县| 琼海市| 德兴市|