最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL中庫的基本操作指南(推薦!)

 更新時間:2023年02月18日 15:20:24   作者:大蝦好吃嗎  
MySQL這個數(shù)據(jù)庫是一個客戶端-服務(wù)器結(jié)構(gòu)的程序,下面這篇文章主要給大家介紹了關(guān)于MySQL中庫的基本操作指南,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下

查看數(shù)據(jù)庫

語法格式:

SHOW {DATABASES | SCHEMAS}
    [LIKE 'pattern' | WHERE expr]

#查看全部數(shù)據(jù)庫

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)
show databases [like '庫名'| where 表達(dá)式];

例:查看有my的數(shù)據(jù)庫

show databases like 'my%'

創(chuàng)建數(shù)據(jù)庫

MySQL安裝好之后,?先需要創(chuàng)建數(shù)據(jù)庫,這是使?MySQL各種功能的前提。本章將詳細(xì)介紹數(shù)據(jù)的基本操作,主要內(nèi)容包括:創(chuàng)建數(shù)據(jù)庫、刪除數(shù)據(jù)庫、不同類型的數(shù)據(jù)存儲引擎和存儲引擎的選擇。

MySQL安裝完成之后,將會在其data?錄下?動創(chuàng)建?個必需的數(shù)據(jù)庫,可以使?SHOW DATABASES; 語句來查看當(dāng)前所有存在的數(shù)據(jù)庫,如下。

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

可以看到,數(shù)據(jù)庫列表中包含了4個數(shù)據(jù)庫,mysql是必需的,它描述?戶訪問權(quán)限,?戶經(jīng)常利?test數(shù)據(jù)庫做測試的?作,其他數(shù)據(jù)庫將在后?的章節(jié)中介紹。

創(chuàng)建數(shù)據(jù)庫是在系統(tǒng)磁盤上劃分?塊區(qū)域?于數(shù)據(jù)的存儲和管理,如果管理員在設(shè)置權(quán)限的時候為?戶創(chuàng)建了數(shù)據(jù)庫,則可以直接使?,否則,需要??創(chuàng)建數(shù)據(jù)庫。MySQL中創(chuàng)建數(shù)據(jù)庫的基本SQL語句格式為:

CREATE DATABASE [IF NOT EXISTS] <數(shù)據(jù)庫名> [[DEFAULT] CHARACTER SET <字符集名>] [[DEFAULT] COLLATE <校對規(guī)則名>];

<數(shù)據(jù)庫名>:創(chuàng)建數(shù)據(jù)庫的名稱。MySQL 的數(shù)據(jù)存儲區(qū)將以?錄?式表示 MySQL數(shù)據(jù)庫,因此數(shù)據(jù)庫名稱必須符合操作系統(tǒng)的?件夾命名規(guī)則,注意在 MySQL 中不區(qū)分??寫。

IF NOT EXISTS:在創(chuàng)建數(shù)據(jù)庫之前進(jìn)?判斷,只有該數(shù)據(jù)庫?前尚不存在時才能執(zhí)?操作。此選項可以?來避免數(shù)據(jù)庫已經(jīng)存在?重復(fù)創(chuàng)建的錯誤。

[DEFAULT] CHARACTER SET:指定數(shù)據(jù)庫的默認(rèn)字符集。

mysql> create database test_db;
Query OK, 1 row affected (0.00 sec)
?
mysql> show create database test_db;
+----------+--------------------------------------------------------------------+
| Database | Create Database                                                    |
+----------+--------------------------------------------------------------------+
| test_db  | CREATE DATABASE `test_db` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+--------------------------------------------------------------------+
1 row in set (0.00 sec)

刪除數(shù)據(jù)庫

刪除數(shù)據(jù)庫是將已經(jīng)存在的數(shù)據(jù)庫從磁盤空間上清除,清除之后,數(shù)據(jù)庫中的所有數(shù)據(jù)也將?起被刪除。刪除數(shù)據(jù)庫語句和創(chuàng)建數(shù)據(jù)庫的命令相似,MySQL中刪除數(shù)據(jù)庫的基本語法格式如下。

DROP {DATABASE | SCHEMA} [IF EXISTS] 庫名

注:IF EXISTS表示如果存在,則刪除庫。

如果指定的數(shù)據(jù)庫不存在,則刪除出錯。

mysql> drop database test_db;
Query OK, 0 rows affected (0.02 sec)

字符集/字符校驗

#查看字符校驗

show collation;

#查看字符集

show character set;

#查看字符集

SHOW CHARACTER SET [LIKE 'pattern' | WHERE expr]show character set [like '字符集名' | where 表達(dá)式];

#查看字符校驗

SHOW COLLATION [LIKE 'pattern' | WHERE expr] show collation [like '字符校驗名' | where 表達(dá)式]; 

修改數(shù)據(jù)庫

ALTER {DATABASE | SCHEMA} [db_name]
    alter_option ...
 
alter_option: {
    [DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name
}

#修改庫字符集

alter database 庫名 default character set = 字符集名;

#修改字符校驗

alter database test collate 字符校驗名;

幫助命令

#幫助

help

#幫助分類

help contents

#查看定義語言

help data definition

#查看操作語言

help data manipulation

#查看創(chuàng)建庫格式

help create database

數(shù)據(jù)庫存儲引擎

數(shù)據(jù)庫存儲引擎是數(shù)據(jù)庫底層軟件組件,數(shù)據(jù)庫管理系統(tǒng)(DBMS)使?數(shù)據(jù)引擎進(jìn)?創(chuàng)建、查詢、更新和刪除數(shù)據(jù)操作。不同的存儲引擎提供不同的存儲機制、索引技巧、鎖定?平等功能,使?不同的存儲引擎,還可以獲得特定的功能?,F(xiàn)在許多不同的數(shù)據(jù)庫管理系統(tǒng)都?持多種不同的數(shù)據(jù)引擎。MySQL的核?就是存儲引擎。

2.3.1 MySQL存儲引擎簡介MySQL提供了多個不同的存儲引擎,包括處理事務(wù)安全表的引擎和處理?事務(wù)安全表的引擎。在MySQL中,不需要在整個服務(wù)器中使??種引擎,針對具體要求可以對每?個表使?不同的存儲引擎。MySQL5.5?持的存儲引擎有:InnoDB、MyISAM、Memory等。

mysql> show engines;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
9 rows in set (0.01 sec)

查看默認(rèn)存儲引擎

mysql> show variables like 'default_storage_engine';
+------------------------+--------+
| Variable_name          | Value  |
+------------------------+--------+
| default_storage_engine | InnoDB |
+------------------------+--------+
1 row in set (0.06 sec)

存儲引擎簡介

  1. 存儲引擎說?了就是數(shù)據(jù)存儲的格式,不同的存儲引擎功能不同,占?的空間??不同,讀取性能也不同。
  2. 數(shù)據(jù)庫存儲引擎是數(shù)據(jù)庫底層軟件組件,不同的存儲引擎提供不同的存儲機制。
  3. 在 MySQL 中,不需要在整個服務(wù)器中使?同?種存儲引擎,可以對每?個表使?不同的存儲引擎。
  4. MySQL ?持多種存儲引擎,如 InnoDB 、MyISAM 、Memory 、Merge 、Archive 、CSV 、Federated 等等。

MyISAM 存儲引擎特點

  1. MySQL 5.5 之前使? MyISAM 引擎,MySQL 5.5 之后使? InnoDB 引擎。
  2. MyISAM 引擎讀取速度較快,占?資源相對較少,不?持事務(wù),不?持外鍵約束,但?持全?索引。
  3. 讀寫互相阻塞,也就是說讀數(shù)據(jù)的時候你就不能寫數(shù)據(jù),寫數(shù)據(jù)的時候你就不能讀數(shù)據(jù)。
  4. MyISAM 引擎只能緩存索引,?不能緩存數(shù)據(jù)。

MyISAM 適?場景

  1. 不需要事務(wù)?持的業(yè)務(wù),例如轉(zhuǎn)賬就不?。
  2. 適?于讀數(shù)據(jù)?較多的業(yè)務(wù),不適?于讀寫頻繁的業(yè)務(wù)。
  3. 并發(fā)相對較低、數(shù)據(jù)修改相對較少的業(yè)務(wù)。
  4. 硬件資源?較差的機器可以考慮使? MyISAM 引擎。

InnoDB 存儲引擎特點

  1. 事務(wù)型數(shù)據(jù)庫的?選引擎,?持事務(wù)安全表,?持?鎖定和外鍵,MySQL5.5.5 版本之后,InnoDB 作為默認(rèn)存儲引擎。
  2. 具有提交、回滾和崩潰恢復(fù)能?的事務(wù)安全存儲引擎,能處理巨?數(shù)據(jù)量,性能及效率?,完全?持外鍵完整性約束。
  3. 具有?常?效的緩存特性,能緩存索引也能緩存數(shù)據(jù),對硬件要求?較?。
  4. 使? InnoDB 時,將在 MySQL 數(shù)據(jù)?錄下創(chuàng)建?個名為 ibdata1 的 10MB ??的?動擴展數(shù)據(jù)?件,以及兩個名為 ib_logfile0 和 ib_logfile1 的 5MB ??的?志?件。

InnoDB 適?場景

  1. 需要事務(wù)?持的業(yè)務(wù)、?并發(fā)的業(yè)務(wù)。
  2. 數(shù)據(jù)更新較為頻繁的場景,?如 BBS、SNS、微博等。
  3. 數(shù)據(jù)?致性要求較?的業(yè)務(wù),?如充值轉(zhuǎn)賬、銀?卡轉(zhuǎn)賬。

Memory 存儲引擎特點

  1. Memory 存儲引擎將表中的數(shù)據(jù)存儲到內(nèi)存中,為查詢和引?其他表數(shù)據(jù)提供快速訪問。
  2. Memory 存儲引擎執(zhí)? HASH 和 BTREE 索引,不?持 BLOB 和 TEXT 列,?持 AUTO_INCREMENT 列和對可包含 NULL 值得列的索引。
  3. 當(dāng)不再需要 Memory 表的內(nèi)容時,要釋放被 Memory 表使?的內(nèi)存,應(yīng)該執(zhí)?DELETE FROM 或 TRUNCATE TABLE ,或者刪除整個表。

存儲引擎的選擇

  1. 如果要提供提交、回滾和崩潰恢復(fù)能?的事務(wù)安全能?,并要求實現(xiàn)并發(fā)控制,InnoDB 是個很好的選擇。
  2. 如果數(shù)據(jù)表主要?來插?和查詢記錄,則 MyISAM 引擎能提供較?的處理效率。
  3. 如果只是臨時存放數(shù)據(jù),數(shù)據(jù)量不?,并且不需要較?的安全性,可以選擇將數(shù)據(jù)保存在內(nèi)存中的 Memory 引擎,MySQL 使?該引擎作為臨時表,存放查詢的中間結(jié)果。
  4. 如果只有 INSERT 和 SELECT 操作,可以選擇 Archive 引擎,?持?并發(fā)的插?操作,如記錄?志信息可以使? Archive 引擎。

功能

MyISAM

Memory

InnoDB

存儲限制

256TB

RAM

64TB

?持事務(wù)

no

no

yes

支持全文索引

yes

no

no

支持?jǐn)?shù)索引

yes

yes

yes

支持哈希緩存

no

yes

no

支持?jǐn)?shù)據(jù)緩存

no

N/A

yes

支持外鍵

no

no

yes

總結(jié)

在mysql中,每個數(shù)據(jù)庫最多可創(chuàng)建20億個表,?個表允許定義1024列,每?的最??度為8092字節(jié)(不包括?本和圖像類型的?度)。

當(dāng)表中定義有varchar、nvarchar或varbinary類型列時,如果向表中插?的數(shù)據(jù)?超過8092字節(jié)時將導(dǎo)致語句失敗,并產(chǎn)?錯誤信息。SQL Server對每個表中?的數(shù)量沒有直接限制,但它受數(shù)據(jù)庫存儲空間的限制。

每個數(shù)據(jù)庫的最?空間1048516TB,所以?個表可?的最?空間為1048516TB減去數(shù)據(jù)庫類系統(tǒng)表和其它數(shù)據(jù)庫對象所占?的空間。理論上?限? 就看你硬?夠不夠? ?多數(shù)情況先是你的硬?不夠。

到此這篇關(guān)于MySQL中庫的基本操作指南的文章就介紹到這了,更多相關(guān)MySQL庫的基本操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL定時任務(wù)EVENT事件的使用方法

    MySQL定時任務(wù)EVENT事件的使用方法

    本文主要介紹了MySQL定時任務(wù)EVENT事件的使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • mysql 無限級分類實現(xiàn)思路

    mysql 無限級分類實現(xiàn)思路

    關(guān)于該問題,暫時自己還沒有深入研究,在網(wǎng)上找到幾種解決方案,各有優(yōu)缺點。
    2011-08-08
  • 詳解mysql的備份與恢復(fù)

    詳解mysql的備份與恢復(fù)

    這篇文章主要介紹了mysql的備份與恢復(fù)的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)mysql,感興趣的朋友可以了解下
    2020-08-08
  • MySQL中(JOIN/ORDER BY)語句的查詢過程及優(yōu)化方法

    MySQL中(JOIN/ORDER BY)語句的查詢過程及優(yōu)化方法

    sql語句性能達(dá)不到你的要求,執(zhí)行效率讓你忍無可忍,一般會造成很多影響。那么我們?nèi)绾谓鉀Q這些問題呢,下面由小編來和大家簡單講下
    2019-05-05
  • Mysql獲取id最大值、表的記錄總數(shù)等相關(guān)問題的方法匯總

    Mysql獲取id最大值、表的記錄總數(shù)等相關(guān)問題的方法匯總

    在做網(wǎng)站開發(fā)時,我們也許會想要取得mysql里id最大的一條記錄,這個其實很簡單。這篇文章給大家整理了獲取一個表的記錄數(shù)、獲取一個表的最大id、獲取一個表的auto_increment值等相關(guān)問題的答案,有需要的朋友們可以參考借鑒。
    2016-09-09
  • Linux下mysql的root密碼修改方法

    Linux下mysql的root密碼修改方法

    mysql是我們經(jīng)常在linux或者windows需要用的一種數(shù)據(jù)庫,相信每位程序員們對mysql應(yīng)該都再熟悉不過了,但是有時大腦短路,突然忘記mysql的超級用戶root的密碼,這個時候就要修改個新的密碼了,下面這篇文章就介紹了Linux下mysql的root密碼修改方法,一起來看看吧。
    2017-03-03
  • Windows下mysql?8.0.28?安裝配置方法圖文教程

    Windows下mysql?8.0.28?安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了Windows下mysql?8.0.28?安裝配置方法圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • MySQL性能瓶頸排查定位實例詳解

    MySQL性能瓶頸排查定位實例詳解

    這篇文章主要介紹了MySQL性能瓶頸排查定位的方法,結(jié)合實例形式詳細(xì)分析了MySQL排查性能瓶頸問題的步驟與相關(guān)技巧,需要的朋友可以參考下
    2016-04-04
  • mysql獲取group by的總記錄行數(shù)另類方法

    mysql獲取group by的總記錄行數(shù)另類方法

    mysql獲取group by內(nèi)部可以獲取到某字段的記錄分組統(tǒng)計總數(shù),而無法統(tǒng)計出分組的記錄數(shù),下面有個可行的方法,大家可以看看
    2014-10-10
  • MySQL清空數(shù)據(jù)表的方法實例與分析

    MySQL清空數(shù)據(jù)表的方法實例與分析

    這篇文章給大家詳細(xì)介紹了MySQL清空數(shù)據(jù)表的方法,文中給出了實例代碼,對大家學(xué)習(xí)使用MySQL具有一定的參考借鑒價值,有需要的可以參考借鑒,下面來一起看看吧。
    2016-10-10

最新評論

上栗县| 汾阳市| 大田县| 木兰县| 清徐县| 农安县| 德保县| 息烽县| 九寨沟县| 南宁市| 秦皇岛市| 桓台县| 中西区| 太和县| 保康县| 随州市| 剑河县| 班戈县| 弥勒县| 忻城县| 拉萨市| 合山市| 巴林左旗| 宜兰县| 南郑县| 安阳市| 珲春市| 济阳县| 冀州市| 东莞市| 石楼县| 漠河县| 勐海县| 杂多县| 正宁县| 江华| 上林县| 昌吉市| 珲春市| 柳江县| 津市市|