在日常的工作学习中,无论是开发、运维,还是测试,学习数据库都是不可避免的,也是日常工作必备的技术之一。在互联网公司中,有很多开源产品线,而MySQL是互联网公司最主要使用的数据库。在刚刚发布的2019年3月数据库热度排行榜中,第一梯队的前三款数据库产品均获得了显着的积分。其中Oracle上涨15.12点,MySQL上涨30.96点,SQLServer上涨7.79点。以下是数据库排名前20的榜单:所以,移民哥,把公众号推送的MySQL数据库文章整理成进阶学习合集,在此分享给各位读者。读者朋友们觉得文章在您学习MySQL数据库的路上对您有所帮助,欢迎转发分享给您的小手。让更多的小伙伴一起参与学习,一起成长,一起奔跑在技术的道路上。需要加入米公哥建立的技术交流群的读者朋友可以在公众号后台回复:“加群”数据——企业的生命线,所以大部分互联网公司都在使用开源数据库产品,因此,MySQL的关注度和使用率都非常高,所以作为一个运维屌丝,掌握它的一些基本操作还是很有必要的,所以今天就来说说一些常用的基本命令,大家不要再错过了,掌握了或者没掌握的,不要再扔民工蛋了,呵呵……从这篇文章开始,我们将为大家带来另一个系列文章:Mysql数据库系列分为以下四大类:1、基础2、中级3、优化4、企业架构1、使用帮助信息登录数据库不再介绍。例如,如果你想创建一个数据库操作,不知道命令,就可以查看帮助信息mysql>helpcreate;Manyhelpitemsforyourrequestexist.Tomakeamorespecificrequest,pleasetype'help- ',where
- isoneofthefollowingtopics:CREATEDATABASE#最简单的委托的清单createeeventCreateFunctionCreateFunctionUdfCreateIndeCreateLogFileGroupCreatCreateAtepRoceTreaTeRecReateServerCreatCreateTeTeTeTableCreateTeTeTeTablestableSpaceCreateeuserCreateTiggreTiggreTiggreTiggreTiggreatEdiggreatEdevcreatshowshowshowshowshowshowcreateeatequreateeventshowcreateatectreatcreateatcreatcreateatemantcreatemantcreathowow#创建默认字符集的数据库(默认拉丁字符集)QueryOK,1rowaffected(0.02sec)mysql>showdatabaseslike"test%";+--------------------+|数据库(测试%)|+--------------------+|测试数据|+-----------------+1rowsinset(0.00sec)创建gbk字符集数据库mysql>createdatabasetest_gbkDEFAULTCHARACTERSETgbkCOLLATEgbk_chinese_ci;QueryOK,1rowaffected(0.04sec)mysql>showcreatedatabasetest_gbk;#查看创建数据库语句+---------+-------------------------------------------+|数据库|创建数据库|+----------+--------------------------------------------------------------+|test_gbk|CREATEDATABASE`test_gbk`/*!40100DEFAULTCHARACTERSETgbk*/|+----------+----------------------------------------------+1rowinset(0.00sec)dropdatabasemysql>dropdatabasetest_data;QueryOK,0rowsaffected(0.07sec)mysql>showdatabases;+---------------------------+|数据库|+----------------------------+|information_schema||test_gbk|+----------------------------+3、连接数据库mysql>usetest_gbk;#相当于cd命令,切换到数据库进行操作Databasechangedmysql>selectdatabase();#查看当前连接的数据库,相当于pwd+------------+|database()|+-------------+|test_gbk|+------------+1rowinset(0.00sec)mysql>selectuser();#查看当前连接的用户数据库,相当于whoami+--------------------+|user()|+--------------------+|root@localhost|+--------------------+1rowinset(0.00sec)4.创建用户,授权,撤销权限创建数据库时,需要为你的用户创建一个用户需要连接到数据库的人员使用和操作数据库。不可能所有人都用root登录,所以权限设置也很重要。mysql>grantallontest_gbk.*to'testuser'@'localhost'identifiedby'123456';test_gbk数据库中的所有表,密码'123456'QueryOK,0rowsaffected(0.00sec)mysql>flushprivileges;#刷新权限使权限生效QueryOK,0rowsaffected(0.00sec)mysql>showgrantsfor'testuser'@'localhost';#查看哪些用户有权限+------------------------------------------------------------------------------------------------------------+|Grantsfortestuser@本地主机|+----------------------------------------------------------------------------------------------------------+|GRANTUSAGEON*.*TO'testuser'@'localhost'IDENTIFIEDBYPASSWORD'*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9'||GRANTALLPRIVILEGESON`test_gbk`.*TO'testuser'@'localhost'|+----------------------------------------------------------------------------------------------------------------+2rowsinset(0.00sec)撤销权限mysql>revokeinsert,update,select,deleteontest_gbk.*from'testuser'@'localhost';#收回以上权限QueryOK,0rowsaffected(0.00sec)mysql>showgrantsfor'testuser'@'localhost';+--------------------------------------------------------------------------------------------------+|Grantsfortestuser@localhost|+------------------------------------------------------------------------------------------------+|GRANTUSAGEON*.*TO'testuser'@'localhost'IDENTIFIEDBYPASSWORD'*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9'||GRANTCREATE、DROP、REFERENCES、INDEX、ALTER、CREATETEMPORARYTABLES、LOCKTABLES、EXCUTE、CREATEVIEW、SHOWVIEW、CREATEROUTINE、ALTERROUTINE、EVENT、TRIGGERON。本地主机'|+--------------------------------------------------------------------------------------------------------------------+2rowsinset(0.00sec)注意:我不知道所有权限是什么权限。使用这个方法后,应该清楚SELECT、INSERT、UPDATE、DELETE、CREATE、DROP、参考、索引、更改、创建临时表、锁定表、执行、创建视图、显示视图、创建例程、更改例程、事件、TRIGGER5、创建、删除表mysql>createtabletest(idint(4)notnull,namechar(20))notnull);#建表创建两个字段QueryOK,0rowsaffected(0.06sec)mysql>showtables;#查看表+------------------+|tables_in_test_gbk|+--------------------+|test|+----------------+1rowinset(0.00sec)mysql>desctest;#查看表结构+-----+---------+-----+-----+---------+------+|Field|Type|Null|Key|Default|Extra|+------+--------+------+-----+--------+--------+|id|int(4)|NO||NULL|||name|char(20)|NO||空||+--------+----------+------+-----+--------+-------+2rowsinset(0.01sec)mysql>createtabletest1(idint(4)notnull,namechar(20)notnull);QueryOK,0rowsaffected(0.01sec)mysql>showtables;+--------------------+|Tables_in_test_gbk|+------------------------+|test||test1|+--------------------+2rowsinset(0.00sec)droptablemysql>droptablestest;QueryOK,0rowsaffected(0.00sec)mysql>showtables;+--------------------+|Tables_in_test_gbk|+--------------------+|test1|+--------------------+1rowinset(0.00sec)查看构建表mysql>showcreatetabletest1\G***************************1.row******************************表:test1CreateTable:CREATETABLE`test1`(`id`int(4)NOTNULL,`name`char(20)NOTNULL)ENGINE=MyISAMDEFAULTCHARSET=gbk1rowinset(0.00sec)基本的操作命令介绍了这么多,都是必备的常用命令微信关注农民工技术之路公众号对话框回复关键字:1024即可获取最新技术干货:包括系统运维、数据库、redis、MogoDB、电子书、Java基础课程、Java实战项目、架构师综合教程、架构师实战项目、大数据、Docker容器、ELKStack、机器学习、BAT面试精讲视频等。