mysql笔记、查看表结构等

发布时间:2026/8/13 16:31:19
mysql笔记、查看表结构等 文章目录acid是什么mysiam和innodb为什么mysiam不支持事务mysiam有优点吗?mysiam全文检索例子查看表结构information_schema支持的列mysql查看连接数mysql的查询数据时区分大小写吗?其他报错报错 CommunicationsException有哪些关键字文档mysql数据库一般是最先接触的数据库比oracle轻量不少。但是也不要以为它简单还是那句话只要是经常要用到的必须掌握。acid是什么事务的几个特性。原子性一致性隔离性持久性mysiam和innodb为什么mysiam不支持事务mysiam只有表锁没有行锁所以不支持事务。mysiam有优点吗?因为没有事务所以innodb用的比较多。但是mysiam有个很大的特点就是支持全文检索。mysiam全文检索例子CREATETABLEarticles(idINTAUTO_INCREMENTNOTNULLPRIMARYKEY,titleVARCHAR(255),contentTEXT,FULLTEXT(title,content))ENGINEMyISAM;ALTERTABLEarticlesADDFULLTEXT(title,content);CREATEFULLTEXTINDEXft_idx_nameONarticles(name);使用FULLTEXT索引进行查询时需要使用MATCH()… AGAINST()语法。以下是一个查询示例SELECT*FROMarticlesWHEREMATCH(title,body)AGAINST(MySQL);这篇文章对于全文检索的描写可以https://developer.baidu.com/article/details/3343194查看mysql的一些例子用法select*frommysql.help_topicwhereexample!;linux中可以执行man mysql ;想要入门先有文档下面罗列一些地址。查看表结构不只有一种方式。方案一(最简单但是不带注释)desc表名;# 展示的数据是列格式的容易贴到excel方案二showcreatetable;方案三(推荐可以带注释)SELECTCOLUMN_NAME,COLUMN_COMMENT,DATA_TYPEFROMINFORMATION_SCHEMA.COLUMNSWHERETABLE_SCHEMA数据库名ANDTABLE_NAME表名;# 也是列格式的和desc相比可以展示更多的列如果想要知道支持哪些列也比较简单见本文information_schema支持的列。 方案四describebw_jms_main;# 和desc差不多多了两类一般用desc即可information_schema支持的列descINFORMATION_SCHEMA.columns;返回结果(如下字段都可以作为select列) TABLE_CATALOGvarchar(512)TABLE_SCHEMAvarchar(64)TABLE_NAMEvarchar(64)COLUMN_NAMEvarchar(64)ORDINAL_POSITIONbigint(21)unsignedCOLUMN_DEFAULTlongtextIS_NULLABLEvarchar(3)DATA_TYPEvarchar(64)CHARACTER_MAXIMUM_LENGTHbigint(21)unsignedCHARACTER_OCTET_LENGTHbigint(21)unsignedNUMERIC_PRECISIONbigint(21)unsignedNUMERIC_SCALEbigint(21)unsignedDATETIME_PRECISIONbigint(21)unsignedCHARACTER_SET_NAMEvarchar(32)COLLATION_NAMEvarchar(32)COLUMN_TYPElongtextCOLUMN_KEYvarchar(3)EXTRAvarchar(30)PRIVILEGESvarchar(80)COLUMN_COMMENTvarchar(1024)GENERATION_EXPRESSIONlongtextmysql查看连接数show status like ‘%connect%’;mysql的查询数据时区分大小写吗?一直以为是区分大小写的实测居然不区分。不仅查询时不区分入库时也是不区分大小写的。数据库值为aBc查询条件为abc可以查到。 数据库已有aBc新增abc认为是同一条数据如果有唯一约束会报错。如果要区分大小写修改校对规则(collate)如ALTERTABLEfooMODIFYCOLUMNnameVARCHAR(255)NOTNULLDEFAULTCOMMENT姓名COLLATEutf8mb4_bin;重点是这个COLLATEutf8mb4_bin 这就会区分大小写了。其他报错报错 CommunicationsException报错信息ERROR com.alibaba.druid.pool.DruidDataSource:2879 - create connection SQLException, url: jdbc:mysql://192.168.1.11:3306/crm?characterEncodingUTF-8useUnicodetrueuseSSLfalsetinyInt1isBitfalseallowPublicKeyRetrievaltrueserverTimezoneAsia/Shanghai, errorCode0, state 08S01 com.mysql.cj.jdbc.exceptions.CommunicationsException: Communicationslinkfailure The last packet sent successfully to the server was0milliseconds ago. The driver has not received any packets from the server. at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)看上去像是创建连接失败。最常见的原因就是用到了失效的连接解决方案testOnBorrow 设置为true。实测还是有问题在某个时间段(几秒内)会连续报这个错误。有哪些关键字记录下便于使用。SQLExceptionstate 08S01jdbc.exceptions.CommunicationsExceptionCommunications link failure文档mysql官网文档首页https://dev.mysql.com/doc/mysql5.5官网function列表https://dev.mysql.com/doc/refman/5.5/en/func-op-summary-ref.html官网grant语法文档https://dev.mysql.com/doc/refman/8.0/en/grant.html#grant-column-privileges一个不错的mysql中文网:https://www.mysqlzh.com/