MySQL數(shù)據(jù)庫基礎(chǔ)篇之入門基礎(chǔ)命令小結(jié)
本文實(shí)例講述了MySQL數(shù)據(jù)庫入門基礎(chǔ)命令。分享給大家供大家參考,具體如下:
在日常工作與學(xué)習(xí)中,無論是開發(fā)、運(yùn)維、還是測試,對于數(shù)據(jù)庫的學(xué)習(xí)是不可避免的,同時也是日常工作的必備技術(shù)之一。在互聯(lián)網(wǎng)公司,開源產(chǎn)品線比較多,互聯(lián)網(wǎng)企業(yè)所用的數(shù)據(jù)庫占比較重的還是MySQL。
在剛剛出爐的 2019 年3月份數(shù)據(jù)庫流行度排行榜上,第一梯隊(duì)的前三個數(shù)據(jù)庫產(chǎn)品都獲得了顯著的加分增長。
其中 Oracle 上升了15.12分,MySQL上升了30.96分,SQL Server則上升了 7.79分。以下是前20位的數(shù)據(jù)庫榜單:

所以,民工哥,將公眾號所推送的MySQL數(shù)據(jù)庫的文章,統(tǒng)一整理做成一個學(xué)習(xí)進(jìn)階的集合,在此分享給各位讀者。各位讀者朋友覺得文章對你在學(xué)習(xí)MySQL數(shù)據(jù)庫的路上有所幫助,請動動小手轉(zhuǎn)發(fā)分享出去。讓更多的小伙伴們一起參與學(xué)習(xí),大家共同成長,一起奔跑在技術(shù)的路上。
有需要加入民工哥組建的技術(shù)交流群的讀者朋友們,可在公眾號后臺回復(fù):「加群」
數(shù)據(jù)——公司的生命線,因此在大多數(shù)的互聯(lián)網(wǎng)公司,都在使用開源的數(shù)據(jù)庫產(chǎn)品,MySQL也因此關(guān)注度與使用率非常的高,所以做為運(yùn)維,掌握它的一些基本操作還是必要的,那么今天就來侃一侃一些常用的基礎(chǔ)命令,走過的、路過的,就不要再錯過了,掌握的、沒掌握的,也不要再扔民工哥雞蛋了哦,呵呵.........
從此篇文章開始將要給大家?guī)砹硪粋€系列的文章:Mysql數(shù)據(jù)庫系列,總共分為以下四個大類:
1、基礎(chǔ)篇
2、中級篇
3、優(yōu)化篇
4、企業(yè)架構(gòu)篇
1、使用幫助信息
登陸數(shù)據(jù)庫就不介紹了哦,比如說想做創(chuàng)建的數(shù)據(jù)庫的操作,不知道命令,就可以查看幫助信息
mysql> help create; Many help items for your request exist. To make a more specific request, please type 'help <item>', where <item> is one of the following topics: CREATE DATABASE #最簡單的創(chuàng)建命令 CREATE EVENT CREATE FUNCTION CREATE FUNCTION UDF CREATE INDEX CREATE LOGFILE GROUP CREATE PROCEDURE CREATE SERVER CREATE TABLE CREATE TABLESPACE CREATE TRIGGER CREATE USER CREATE VIEW SHOW SHOW CREATE DATABASE SHOW CREATE EVENT SHOW CREATE FUNCTION SHOW CREATE PROCEDURE SHOW CREATE TABLE SPATIAL
2、創(chuàng)建、刪除、查看數(shù)據(jù)庫
mysql> create database test_data; #創(chuàng)建默認(rèn)字符集的數(shù)據(jù)庫(默認(rèn)是拉丁字符集) Query OK, 1 row affected (0.02 sec) mysql> show databases like "test%"; +------------------+ | Database (test%) | +------------------+ | test_data | +------------------+ 1 rows in set (0.00 sec)
創(chuàng)建gbk字符集的數(shù)據(jù)庫
mysql> create database test_gbk DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci; Query OK, 1 row affected (0.04 sec) mysql> show create database test_gbk; #查看創(chuàng)建數(shù)據(jù)庫的語句 +----------+----------------------------------------------+ | Database | Create Database | +----------+------------------------------------------------------------------+ | test_gbk | CREATE DATABASE `test_gbk` /*!40100 DEFAULT CHARACTER SET gbk */ | +----------+----------------------------------------------+ 1 row in set (0.00 sec)
刪除數(shù)據(jù)庫
mysql> drop database test_data; Query OK, 0 rows affected (0.07 sec) mysql> show databases; +----------------------------+ | Database | +----------------------------+ | information_schema | | test_gbk | +----------------------------+
3、連接數(shù)據(jù)庫
mysql> use test_gbk; #相當(dāng)于cd命令,切換到數(shù)據(jù)庫進(jìn)行操作 Database changed mysql> select database(); #查看當(dāng)前連接的數(shù)據(jù)庫,相當(dāng)于pwd +------------+ | database() | +------------+ | test_gbk | +------------+ 1 row in set (0.00 sec) mysql> select user(); #查看當(dāng)前連接數(shù)據(jù)庫的用戶,相當(dāng)于whoami +--------------------+ | user() | +-------------------+ | root@localhost | +--------------------+ 1 row in set (0.00 sec)
4、創(chuàng)建用戶、授權(quán)、收回權(quán)限
當(dāng)數(shù)據(jù)庫創(chuàng)建完成后,就需要創(chuàng)建用戶,以供需要連接數(shù)據(jù)庫的人員使用與操作數(shù)據(jù)庫,不可能人人使用root登陸,所以權(quán)限設(shè)置也是很重要的
mysql> grant all on test_gbk.* to 'testuser'@'localhost' identified by '123456'; #創(chuàng)建用戶并all權(quán)限給在test_gbk庫所有表,密碼‘123456' Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; #刷新權(quán)限,使權(quán)限生效 Query OK, 0 rows affected (0.00 sec) mysql> show grants for 'testuser'@'localhost'; #查看用戶有哪些權(quán)限 +-----------------------------------------------------------------------------------------------------------------+ | Grants for testuser@localhost | +-----------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'testuser'@'localhost' IDENTIFIED BY PASSWORD '*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9' | | GRANT ALL PRIVILEGES ON `test_gbk`.* TO 'testuser'@'localhost' | +-----------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec)
收回權(quán)限
mysql> revoke insert,update,select,delete on test_gbk.* from 'testuser'@'localhost'; #將以上權(quán)限收回 Query OK, 0 rows affected (0.00 sec) mysql> show grants for 'testuser'@'localhost'; +----------------------------------------------------------------------------------------------------+ | Grants for testuser@localhost | +----------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'testuser'@'localhost' IDENTIFIED BY PASSWORD '*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9' | | GRANT CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER ON `test_gbk`.* TO 'testuser'@'localhost' | +------------------------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec)
注:原來不知道all權(quán)限到底是哪些權(quán)限,采用這種方法之后,應(yīng)該就清楚了
SELECT,INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER
5、創(chuàng)建、刪除表
mysql> create table test(id int(4)not null,name char(20)not null); #建表,并且建立兩個字段 Query OK, 0 rows affected (0.06 sec) mysql> show tables;#查看表 +--------------------+ | Tables_in_test_gbk | +--------------------+ | test | +--------------------+ 1 row in set (0.00 sec) mysql> desc test; #查看表結(jié)構(gòu) +-------+----------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+----------+------+-----+---------+-------+ | id | int(4) | NO | | NULL | | | name | char(20) | NO | | NULL | | +-------+----------+------+-----+---------+-------+ 2 rows in set (0.01 sec) mysql> create table test1(id int(4)not null,name char(20)not null); Query OK, 0 rows affected (0.01 sec) mysql> show tables; +------------------------+ | Tables_in_test_gbk | +------------------------+ | test | | test1 | +--------------------+ 2 rows in set (0.00 sec)
刪除表
mysql> drop tables test; Query OK, 0 rows affected (0.00 sec) mysql> show tables; +--------------------+ | Tables_in_test_gbk | +--------------------+ | test1 | +--------------------+ 1 row in set (0.00 sec)
查看建表
mysql> show create table test1\G *************************** 1. row *************************** Table: test1 Create Table: CREATE TABLE `test1` ( `id` int(4) NOT NULL, `name` char(20) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=gbk 1 row in set (0.00 sec)
基礎(chǔ)的操作命令就介紹這么多,都是一些常用的必備命令
更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL常用函數(shù)大匯總》、《MySQL日志操作技巧大全》、《MySQL事務(wù)操作技巧匯總》、《MySQL存儲過程技巧大全》及《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》
希望本文所述對大家MySQL數(shù)據(jù)庫計有所幫助。
相關(guān)文章
SQL查詢之字段是逗號分隔開的數(shù)組如何查詢匹配數(shù)據(jù)問題
這篇文章主要介紹了SQL查詢之字段是逗號分隔開的數(shù)組如何查詢匹配數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03
Windows下安裝MySQL 5.7.17壓縮版中遇到的坑
最近發(fā)現(xiàn)原來好端端的MySQL突然間不能用了,無奈只能重新下載了最新的MySQL 5.7.17 Community 壓縮版 for Windows 64-bit。但在安裝過程中遇到了一些意外的問題,通過查找相關(guān)資料也解決了,所以想著總結(jié)出來,方便需要的朋友們可以參考借鑒,下面來一起看看吧。2017-01-01
允許遠(yuǎn)程用戶訪問mysql服務(wù)sql語句
本節(jié)主要介紹了如何允許遠(yuǎn)程用戶訪問mysql服務(wù),本例授權(quán)192.168.14.1 主機(jī)的cakephp用戶訪問cakephp數(shù)據(jù)庫2014-07-07
Django創(chuàng)建項(xiàng)目+連通mysql的操作方法
這篇文章主要介紹了Django創(chuàng)建項(xiàng)目+連通mysql的操作方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03
MySQL中導(dǎo)出用戶權(quán)限設(shè)置的腳本分享
這篇文章主要介紹了MySQL中導(dǎo)出用戶權(quán)限設(shè)置的腳本分享,本文通過導(dǎo)出mysql.user表中數(shù)據(jù)實(shí)現(xiàn)導(dǎo)出權(quán)限設(shè)置,需要的朋友可以參考下2014-10-10
Mysql如何將數(shù)據(jù)按照年月分組的統(tǒng)計
這篇文章主要介紹了Mysql如何將數(shù)據(jù)按照年月分組的統(tǒng)計方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-04-04
linux下mysql數(shù)據(jù)庫單向同步配置方法分享
mysql數(shù)據(jù)庫單向同步又叫做主從復(fù)制,是通過二進(jìn)制日志文件完成的,注意:mysql 數(shù)據(jù)庫的版本,兩個數(shù)據(jù)庫版本要相同2012-06-06

