當前位置:首頁 » 數據倉庫 » mysql資料庫元表
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

mysql資料庫元表

發布時間: 2023-03-22 22:44:51

⑴ mysql有庫和表的概念,但是中間這個是啥意思哪位大神知道

在mysql中,shema和叢賀寬資料庫是一滲亮個意思,CREATE SCHEMA是CREATE DATABASE的同義詞。但是其他資料庫schema和database並不等同,需要具體看文檔了解拍檔。

⑵ 什麼是MySql資料庫

MySQL資料庫:

    MySQL是一種開放源代碼的關系型資料庫管理系統(RDBMS),使用最常用的資料庫管理語言--結構化查詢語言(SQL)進行資料庫管理。

    MySQL是開放源代碼的,因此任何人都可以在General Public License的許可下下載並根據個性化的需要對其進行修改。

    MySQL因為其速度、可靠性和適應性而備受關注。大多數人都認為在不需要事務化處理的情況下,MySQL是管理內容最好的選擇。

    資料庫簡介:

    MySQL是一種開放源代碼的關系型資料庫管理系統(RDBMS),MySQL資料庫系統使用最常用的資料庫管理語言--結構化查詢語言(SQL)進行資料庫管理。

    由於MySQL是開放源代碼的,因此任何人都可以在General Public License的許可下下載並根據個性化的需要對其進行修改。MySQL因為其速度、可靠性和適應性而備受關注。大多數人都認為在不需要事務化處理的情況下,MySQL是管理內容最好的選擇。

    MySQL這個名字,起源不是很明確。一個比較有影響的說法是,基本指南和大量的庫和工具帶有前綴「my」已經有10年以上,而且不管怎樣,MySQL AB創始人之一的Monty Widenius的女兒也叫My。這兩個到底是哪一個給出了MySQL這個名字至今依然是個迷,包括開發者在內也不知道。

    MySQL的海豚標志的名字叫「sakila」,它是由MySQL AB的創始人從用戶在「海豚命名」的競賽中建議的大量的名字表中選出的。獲勝的名字是由來自非洲史瓦濟蘭的開源軟體開發者Ambrose Twebaze提供。根據Ambrose所說,Sakila來自一種叫SiSwati的史瓦濟蘭方言,也是在Ambrose的家鄉烏干達附近的坦尚尼亞的Arusha的一個小鎮的名字。

    MySQL,雖然功能未必很強大,但因為它的開源、廣泛傳播,導致很多人都了解到這個資料庫。它的歷史也富有傳奇性。

    MySQL資料庫歷史:

    MySQL的歷史最早可以追溯到1979年,那時Oracle也才小打小鬧,微軟的SQL Server影子都沒有。有一個人叫Monty Widenius, 為一個叫TcX的小公司打工,並用BASIC設計了一個報表工具,可以在4M主頻和16KB內存的計算機上運行。過了不久,又將此工具,使用C語言重寫,移植到Unix平台,當時,它只是一個很底層的面向報表的存儲引擎。這個工具叫做Unireg。

    可是,這個小公司資源有限,Monty天賦極高,面對資源有限的不利條件,他反而更能發揮潛能,總是力圖寫出最高效的代碼。並因此養成了習慣。與Monty同在一起的還有一些別的同事,很少有人能堅持把那些代碼持續寫到20年後,而Monty卻做到了。

    1990年,TcX的customer 中開始有人要求要為它的API提供SQL支持,當時,有人想到了直接使用商用資料庫算了,但是Monty覺得商用資料庫的速度難令人滿意。於是,他直接藉助於mSQL的代碼,將它集成到自己的存儲引擎中。但不巧的是,效果並不太好。於是, Monty雄心大起,決心自己重寫一個SQL支持。

    1996年,MySQL 1.0發布,只面向一小撥人,相當於內部發布。到了96年10月,MySQL 3.11.1發布了,呵呵,沒有2.x版本。最開始,只提供了Solaris下的二進製版本。一個月後,Linux版本出現了。

    緊接下來的兩年裡,MySQL依次移植到各個平台下。它發布時,採用的許可策略,有些與眾不同:允許免費商用,但是不能將MySQL與自己的產品綁定在一起發布。如果想一起發布,就必須使用特殊許可,意味著要花銀子。當然,商業支持也是需要花銀子的。其它的,隨用戶怎麼用都可以。這種特殊許可為MySQL帶來了一些收入,從而為它的持續發展打下了良好的基礎。(細想想,PostgreSQL曾經有幾年限入低谷,可能與它的完全免費,不受任何限制有關系)。

    MySQL3.22應該是一個標志性的版本,提供了基本的SQL支持。

    MySQL關系型資料庫於1998年1月發行第一個版本。它使用系統核心提供的多線程機制提供完全的多線程運行模式,提供了面向C、C++、Eiffel、Java、Perl、PHP、Python以及Tcl等編程語言的編程介面(APIs),支持多種欄位類型並且提供了完整的操作符支持查詢中的SELECT和WHERE操作。

    MySQL是開放源代碼的,因此任何人都可以在General Public License的許可下下載並根據個性化的需要對其進行修改。MySQL因為其速度、可靠性和適應性而備受關注。

    1999-2000年,有一家公司在瑞典成立了,叫MySQL AB (AB是瑞典語「股份公司」的意思)。 雇了幾個人,與Sleepycat合作,開發出了 Berkeley DB引擎, 因為BDB支持事務處理,所以,MySQL從此開始支持事務處理了。

    2000年4月,MySQL對舊的存儲引擎進行了整理,命名為MyISAM。同時,2001年,Heikiki Tuuri向MySQL提出建議,希望能集成他們的存儲引擎InnoDB,這個引擎同樣支持事務處理,還支持行級鎖。

    如今,遺憾的是,BDB和InnoDB好像都被Oracle收購了,為了消滅競爭對手,哪怕是開源的,都是不擇手段。

    MySQL與InnoDB的正式結合版本是4.0。

    到了MySQL5.0,2003年12月,開始有View,存儲過程之類的東東,當然,其間, bug也挺多。

    在2008年1月16號 MySQL被Sun公司收購。

    最近,MySQL的創始人Monty Widenius已經向Sun提交了辭呈。head都要走了。

    據說,被Sun收購的公司多薄命,不知道MySQL今後前途如何,希望一路走好。相信MySQL的生命力還是很長久的。

    時至今日 mysql 和 php 的結合絕對是完美.很多大型的網站也用到mysql資料庫.mysql的發展前景是非常光明的!

    MySQL常用命令:

    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), sex 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 sex=」f」 where name=』hyq』;

    全局管理許可權對應解釋:

    FILE: 在MySQL伺服器上讀寫文件。

    PROCESS: 顯示或殺死屬於其它用戶的服務線程。

    RELOAD: 重載訪問控製表,刷新日誌等。

    SHUTDOWN: 關閉MySQL服務。

    資料庫/數據表/數據列許可權:

    ALTER: 修改已存在的數據表(例如增加/刪除列)和索引。

    CREATE: 建立新的資料庫或數據表。

    DELETE: 刪除表的記錄。

    DROP: 刪除數據表或資料庫。

    INDEX: 建立或刪除索引。

    INSERT: 增加表的記錄。

    SELECT: 顯示/搜索表的記錄。

    UPDATE: 修改表中已存在的記錄。

    特別的許可權:

    ALL: 允許做任何事(和root一樣)。

    USAGE: 只允許登錄–其它什麼也不允許做。

    MySQL資料庫導入方法:

    MySQL資料庫的導入,有兩種方法:

    1) 先導出資料庫SQL腳本,再導入;

    2) 直接拷貝資料庫目錄和文件。

    在不同操作系統或MySQL版本情況下,直接拷貝文件的方法可能會有不兼容的情況發生。

    所以一般推薦用SQL腳本形式導入。下面分別介紹兩種方法。

    2. 方法一 SQL腳本形式

    操作步驟如下:

    2.1. 導出SQL腳本

    在原資料庫伺服器上,可以用phpMyAdmin工具,或者mysqlmp命令行,導出SQL腳本。

    2.1.1 用phpMyAdmin工具

    導出選項中,選擇導出「結構」和「數據」,不要添加「DROP DATABASE」和「DROP TABLE」選項。

    選中「另存為文件」選項,如果數據比較多,可以選中「gzipped」選項。

    將導出的SQL文件保存下來。

    2.1.2 用mysqlmp命令行

    命令格式

    mysqlmp -u 用戶名 -p 資料庫名 > 資料庫名.sql

    範例:

    mysqlmp -u root -p abc > abc.sql

    (導出資料庫abc到abc.sql文件)

    提示輸入密碼時,輸入該資料庫用戶名的密碼。

    2.2. 創建空的資料庫

    通過主控界面/控制面板,創建一個資料庫。假設資料庫名為abc,資料庫全權用戶為abc_f。

    2.3. 將SQL腳本導入執行

    同樣是兩種方法,一種用phpMyAdmin(mysql資料庫管理)工具,或者mysql命令行。

    2.3.1 用phpMyAdmin工具

    從控制面板,選擇創建的空資料庫,點「管理」,進入管理工具頁面。

    在"SQL"菜單中,瀏覽選擇剛才導出的SQL文件,點擊「執行」以上載並執行。

    注意:phpMyAdmin對上載的文件大小有限制,php本身對上載文件大小也有限制,如果原始sql文件

    比較大,可以先用gzip對它進行壓縮,對於sql文件這樣的文本文件,可獲得1:5或更高的壓縮率。

    gzip使用方法:

    # gzip xxxxx.sql

    得到

    xxxxx.sql.gz文件。

    提示輸入密碼時,輸入該資料庫用戶名的密碼。

    3 直接拷貝

    如果資料庫比較大,可以考慮用直接拷貝的方法,但不同版本和操作系統之間可能不兼容,要慎用。

    3.1 准備原始文件

    用tar打包為一個文件

    3.2 創建空資料庫

    3.3 解壓

    在臨時目錄中解壓,如:

    cd /tmp

    tar zxf mydb.tar.gz

    3.4 拷貝

    將解壓後的資料庫文件拷貝到相關目錄

    cd mydb/

    cp * /var/lib/mysql/mydb/

    對於FreeBSD:

    cp * /var/db/mysql/mydb/

    3.5 許可權設置

    將拷貝過去的文件的屬主改為mysql:mysql,許可權改為660

    chown mysql:mysql /var/lib/mysql/mydb/*

    chmod 660 /var/lib/mysql/mydb/*

    Mssql轉換mysql的方法:

    1.導表結構

    使用MySQL生成create腳本的方法。找到生成要導出的腳本,按MySQL的語法修改一下到MySQL資料庫中創建該表的列結構什麼的。

    2.導表數據

    在MSSQL端使用bcp導出文本文件:

    bcp 「Select * FROM dbname.dbo.tablename;」 queryout tablename.txt -c -Slocalhostdb2005 -Usa

    其中」"中是要導出的sql語句,-c指定使用 進行欄位分隔,使用 進行記錄分隔,-S指定資料庫伺服器及實例,-U指定用戶名,-P指定密碼.

    在MySQL端使用mysqlimport 導入文本文件到相應表中

    mysqlimport -uroot -p databasename /home/test/tablename.txt

    其中-u指定用戶名,-p指定密碼,databasename指定資料庫名稱,表名與文件名相同

    MySQL備份與恢復:

    MySQL備份恢復數據的一般步驟

    備份一個資料庫的例子:

    1、備份前讀鎖定涉及的表

    mysql>LOCK TABLES tbl1 READ,tbl1 READ,…
    如果,你在mysqlmp實用程序中使用--lock-tables選項則不必使用如上SQL語句。

    2、導出資料庫中表的結構和數據

    shell>mysqlmp --opt db_name>db_name.sql

    3、啟用新的更新日誌

    shell>mysqladmin flush-logs

    這樣可以記錄你備份後的數據改變為恢復數據准備。

    4、解除表的讀鎖

    mysql>UNLOCK TABLES;

    為了加速上述過程,你可以這樣做:

    shell> mysqlmp --lock-tables --opt db_name>db_name.sql; mysqladmin flush-logs

    但是這樣可能會有點小問題。上命令在啟用新的更新日誌前就恢復表的讀鎖,
    在更新繁忙的站點,可能有備份後的更新數據沒有記錄在新的日誌中。
    現在恢復上面備份的資料庫

    1、對涉及的表使用寫鎖

    mysql>LOCK TABLES tbl1 WRITE,tbl1 WRITE,…

    2、恢復備份的數據

    shell>mysql db_name < db_name.sql

    3、恢復更新日誌的內容

    shell>mysql --one-database db_name < hostname.nnn

    假設需要使用的日誌名字為hostname.nnn

    4、啟用新的更新日誌

    shell>mysqladmin flush-logs

    5、解除表的寫鎖

    mysql>UNLOCK TABLES;

    希望上面的例子能給你啟發,因為備份數據的手法多種多樣,你所使用的和上面所述可能大不一樣,但是對於備份和恢復中,表的鎖定、啟用新的更新日誌的時機應該是類似的,仔細考慮這個問題。

    MySQL資料庫優化:

    選擇InnoDB作為存儲引擎

    大型產品的資料庫對於可靠性和並發性的要求較高,InnoDB作為默認的MySQL存儲引擎,相對於MyISAM來說是個更佳的選擇。

    優化資料庫結構

    組織資料庫的schema、表和欄位以降低I/O的開銷,將相關項保存在一起,並提前規劃,以便隨著數據量的增長,性能可以保持較高的水平。

    設計數據表應盡量使其佔用的空間最小化,表的主鍵應盡可能短。·對於InnoDB表,主鍵所在的列在每個輔助索引條目中都是可復制的,因此如果有很多輔助索引,那麼一個短的主鍵可以節省大量空間。

    僅創建你需要改進查詢性能的索引。索引有助於檢索,但是會增加插入和更新操作的執行時間。

    InnoDB的ChangeBuffering特性

    InnoDB提供了changebuffering的配置,可減少維護輔助索引所需的磁碟I/O。大規模的資料庫可能會遇到大量的表操作和大量的I/O,以保證輔助索引保持最新。當相關頁面不在緩沖池裡面時,InnoDB的changebuffer將會更改緩存到輔助索引條目,從而避免因不能立即從磁碟讀取頁面而導致耗時的I/O操作。當頁面被載入到緩沖池時,緩沖的更改將被合並,更新的頁面之後會刷新到磁碟。這樣做可提高性能,適用於MySQL5.5及更高版本。

    InnoDB頁面壓縮

    InnoDB支持對表進行頁面級的壓縮。當寫入數據頁的時候,會有特定的壓縮演算法對其進行壓縮。壓縮後的數據會寫入磁碟,其打孔機制會釋放頁面末尾的空塊。如果壓縮失敗,數據會按原樣寫入。表和索引都會被壓縮,因為索引通常是資料庫總大小中佔比很大的一部分,壓縮可以顯著節約內存,I/O或處理時間,這樣就達到了提高性能和伸縮性的目的。它還可以減少內存和磁碟之間傳輸的數據量。MySQL5.1及更高版本支持該功能。

    注意,頁面壓縮並不能支持共享表空間中的表。共享表空間包括系統表空間、臨時表空間和常規表空間。

    使用批量數據導入

    在主鍵上使用已排序的數據源進行批量數據的導入可加快數據插入的過程。否則,可能需要在其他行之間插入行以維護排序,這會導致磁碟I/O變高,進而影響性能,增加頁的拆分。關閉自動提交的模式也是有好處的,因為它會為每個插入執行日誌刷新到磁碟。在批量插入期間臨時轉移唯一鍵和外鍵檢查也可顯著降低磁碟I/O。對於新建的表,最好的做法是在批量導入後創建外鍵/唯一鍵約束。

    一旦你的數據達到穩定的大小,或者增長的表增加了幾十或幾百兆位元組,就應該考慮使用OPTIMIZETABLE語句重新組織表並壓縮浪費的空間。對重新組織後的表進行全表掃描所需要的I/O會更少。

    優化InnoDB磁碟I/O

    增加InnoDB緩沖池大小可以讓查詢從緩沖池訪問而不是通過磁碟I/O訪問。通過調整系統變數innodb_flush_method來調整清除緩沖的指標使其達到最佳水平。

    MySQL的內存分配

    在為MySQL分配足夠的內存之前,請考慮不同領域對MySQL的內存需求。要考慮的關鍵領域是:並發連接——對於大量並發連接,排序和臨時表將需要大量內存。在撰寫本文時,對於處理3000+並發連接的資料庫,16GB到32GB的RAM是足夠的。

    內存碎片可以消耗大約10%或更多的內存。像innodb_buffer_pool_size、key_buffer_size、query_cache_size等緩存和緩沖區要消耗大約80%的已分配內存。

    日常維護

    定期檢查慢的查詢日誌並優化查詢機制以有效使用緩存來減少磁碟I/O。優化它們,以掃描最少的行數,而不是進行全表掃描。

    其他可以幫助DBA檢查和分析性能的日誌包括:錯誤日誌、常規查詢日誌、二進制日誌、DDL日誌(元數據日誌)。

    定期刷新緩存和緩沖區以降低碎片化。使用OPTIMIZETABLE語句重新組織表並壓縮任何可能被浪費的空間。

⑶ mysql資料庫的基本組成單元是多張表

你想問的應該是mysql資料庫的基本組成單元是多張表是什麼意思。MySQL是關系型資料庫管理軟體,多條數據組成一張表,多張表組成一個庫。
表才是存放數據的基本單元。結論:Mysql數據底層由多個database組成,每一個database存放多張表。
一組表組成了資料庫。通俗來講這種資料庫就是由多張表組成,並且這些表之間存在一定的關系。

⑷ mysql 資料庫表間關系圖怎麼查看

mysql資料庫表間的關系圖可以通過navicat查看:

第一步:下載navicat打開;

第二步:點擊navicat界面最右下角標注的按鈕即可查看關系圖。

最新的MySQL Workbench已經完全包含了資料庫建模與設計、資料庫SQL開發和資料庫管理與維護等功能。

Mysql資料庫-----表

sh.qihoo.com2018-04-07 08:20

1、定義: 表(table)是資料庫最基本的組成單元,資料庫是用來存儲數據的,資料庫中有很多表,每一個表都是一個獨立的單元,表也是一個結構化的文件,由行和列組成,行稱為數據或記錄,列稱為欄位,欄位又包含:欄位名稱、欄位類型、長度、約束。

2、創建表

(1)、遲嫌氏語法格式:create table 表名稱(欄位名 類型(長度) 約束);

(2)者擾、MySQL常用數據類型

VARCHAR:碼散可變長度字元串(VARCH AR(3)表示存儲的數據長度丌能超過3個字元長度)

CHAR:定長字元串(CHAR(3) 表示存儲的數據長度丌能超過3個字元長度)

INT:整數型(INT(3)表示最大可以存儲999)

BIGINT:長整型(對應java程序中的long類型)

FLOAT:浮點型單精度(FLOAT(7,2)表示7個有效數字,2個有效小數位)

DOUBLE:浮點型雙精度(DOUBLE(7,2)表示7個有效數字,2個有效小數位)

DATE:日期類型( 實際開發中,常用字元串代替日期類型)

BLOB:二進制大對象 Binary Large Object(專門存儲圖片、視頻、聲音等數據)

CLOB:字元型大對象 Character Large Object( 可存儲超大文本,可存儲4G+字元串)

VARCHAR與CHAR對比:

都是字元串

VARCHAR比較智能,可以根據實際的數據長度分配空間,比較節省空間;但在分配的時候需要相關判斷,效率低。

CHAR不需要勱態分配空間,所以執行效率高,但是可能會導致空間浪費

若欄位中的數據不具備伸縮性,建議採用CHAR類型存儲

若欄位中的數據具備很強的伸縮性,建議採用VARCHAR類型存儲

⑸ mysql資料庫的存放位置在哪裡

資料庫文件默認存放位置:C:ProgramFilesMySQLMySQLServer5.0data。

資料庫的配置文件在C:ProgramFilesMySQLMySQLServer5.0my.ini。

在data文件夾里找到不test的資料庫文件夾和自己創建的文件夾是因為test資料庫是空的資料庫,用於測試使用,自己的文件夾需要去mysql資料庫尋找。

mysql資料庫文件默認存放位置:C:ProgramFilesMySQLMySQLServer5.0mysql。

MySQL是一種開放源代碼的關系型資料庫管理系統(RDBMS),MySQL資料庫系統使用最常用的資料庫管理語言--結構化查詢語言(SQL)進行資料庫管理。

下面詳細介紹幾個找不同數拆滲據庫用到的命令:

1、選擇你所創建的資料庫

mysql>USEMYSQLDATA;(按回車鍵出現Databasechanged時說明操作成功!)

2、:使用SHOW語句找出在伺服器上當前存在什麼資料庫

mysql>SHOWDATABASES;

3、查看現在的資料庫中存在什麼表

mysql>SHOWTABLES;

4、顯示表的結構。

mysql>DESCRIBEMYTABLE;

(5)mysql資料庫元表擴展閱讀:

mysql資料庫伺服器有三個資料庫:information_schema資料庫,mysql資料庫,test資料庫。

1、nformation_schema資料庫:這個資料庫保存了mysql伺服器所有資料庫的信息。比如資料庫雀慎的名、資料庫的表、訪問許可權、資料庫表的數據類型,資料庫索引的信息等等。就是關於這個資料庫的點點滴滴信息都存儲在這個資料庫中。

nformation_schema資料庫是MySQL自帶的,它提供了訪問資料庫元數據的方式。什麼是元數據呢?元數據是關於數據的數據,如資料庫名或表名,列的數據類型,或訪問許可權等。有些時候用於表述該信息的其他術語包括「數據詞典」和「系統目錄」。

在MySQL中,把information_schema看作是一個資料庫,確切說是信息資料庫。其中保存著關於MySQL伺服器所維護的所有其他資料庫的信息。

如資料庫名,資料庫的表,表欄的數據類型與訪問許可權等。在INFORMATION_SCHEMA中,有數個只讀表。它們實際上是視圖,而不是基本表,因此,將無法看到與之相關的任何文件。

2、mysql資料庫:這個資料庫中是mysql資料庫中的所有的信息表。

這個是mysql的核心資料庫,類似於sqlserver中的master表,主要負責存儲資料庫的用戶、許可權設置、關鍵字等mysql自己需要使用的控制和管理信息。不可以刪除,如果對mysql不是很了解,也不要輕易修改這個資料庫裡面的表信息。

3、test資料庫:空的資料庫,用於測試用旅歲脊。

這個是安裝時候創建的一個測試資料庫,和它的名字一樣,是一個完全的空資料庫,沒有任何錶,可以刪除。

⑹ mysql如何進入資料庫查看所有表

1.查看資料庫,選中使用資料庫,並查看資料庫表,具體操作命令如下:

show databases;

use student;

show tables;

(6)mysql資料庫元表擴展閱讀:

可以使用命令行工具管理 MySQL 資料庫(命令 mysql 和 mysqladmin),也可以從 MySQL 的網站下載圖形管理工具 MySQL Administrator, MySQL Query Browser 和 MySQL Workbench。

phpMyAdmin是由 php 寫成的 MySQ L資料庫系統管理程程序,讓管理者可用 Web 界面管理 MySQL 資料庫。

phpMyBackupPro也是由 PHP 寫成的,可以透過 Web 界面創建和管理資料庫。它可以創建偽 cronjobs,可以用來自動在某個時間或周期備份 MySQL 資料庫。

另外,還有其他的 GUI 管理工具,例如 mysql-front 以及 ems mysql manager,navicat等等。

⑺ mysql怎麼查看錶結構和注釋

MySQL 查看錶結構簡單命令。

一、簡單描述表結構,欄位類型desc tabl_name;
顯示表結構,欄位類型,主鍵,是否為空等屬性,但不顯示外鍵。
二、查詢表中列的注釋信息
select * from information_schema.columns where table_schema = 'db' #表所在資料庫
and table_name = 'tablename' ; #你要查的表
三、只查詢列名和注釋
select column_name,
column_comment from information_schema.columns where table_schema ='db' and
table_name = 'tablename' ;
四、#查看錶的注釋
select table_name,table_comment from information_schema.tables where table_schema = 'db' and table_name ='tablename'
ps:二~四是在元數據表中查看,我在實際操作中,常常不靈光,不知為什麼,有了解的大俠請留印。
五、查看錶生成的DDL show create table table_name;

⑻ 查詢mysql資料庫中所有表名

使用select命令,可以查詢所有表名

寫法如下:

selecttable_namefrominformation_schema.tableswheretable_schema='當前資料庫'

(8)mysql資料庫元表擴展閱讀

其它用法

1、使用SHOW語句找出在伺服器上當前存在什麼資料庫:

mysql> SHOW DATABASES;

2、創建一個資料庫MYSQLDATA

mysql> CREATE DATABASE MYSQLDATA;

3、選擇你所創建的資料庫

mysql> USE MYSQLDATA; (按回車鍵出現Database changed 時說明操作成功!)

4、查看現在的資料庫中存在什麼表

mysql> SHOW TABLES;

5、創建一個資料庫表

mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex 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;