; # 查询表在哪个数据库与注释 SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_COMMENT FROM information_schema.TABLES WHERE...1=1 # AND TABLE_SCHEMA = '数据库名' AND TABLE_NAME = '表名' # AND TABLE_COMMENT = '表注释' ; # 查询列在哪个表与注释 SELECT...AND TABLE_SCHEMA = '数据库名' # AND TABLE_NAME = '表名' AND c.COLUMN_NAME = '列名' # AND c.COLUMN_COMMENT = '列注释...' ; # 查询所有列名与注释并用逗号分隔 SELECT TABLE_SCHEMA, TABLE_NAME, group_concat(COLUMN_NAME SEPARATOR ', ')
直接了当上SQL SELECT a.字段1, a.字段2, b.字段1, COUNT(DISTINCT a.字段1),COUNT(DISTINCT b.字段1) //这行为去重...xs_highway_transport_log a LEFT JOIN b表 b ON b.id = a.main GROUP BY a.字段1 ,b.字段1 // 这行为分组 直接这样 即可实现 多字段去重情况
前言 最近改用ER\Studio建模,发现ER\Studio居然不支持生成mysql列注释,看网上都说勾选即可,然后生成mysql时并没有那个勾选项,试了下生成Oracle和DB2是支持的......然通过工具提取改造出独立的mysql列注释语句,so easy~~ 演示 执行工具jar ########################################################...######### 此工具用于解决ER/Studio设置注释definition依然无法生成Mysql的列注释问题 整体步骤: 1、使用ER/Studio生成Mysql的sql在数据库建表 2、使用ER...添加注释的文件 5、在步骤1的数据库实例下执行此mysql添加注释的sql文件 另外注意: 1、目前只支持INTEGER、VARCHAR、TIMESTAMP、CHAR的注释生成,其他将忽略 2、ER/Studio...列注释工具 下载 没做过极限测试,可以自己调试改造或者留言。
像代码一样,可以为表以及表中的列添加注释,方便其他人知晓其功能。对于一些字段,在经过一定时间后,创建者未必也能想起其具体的含意,所以注释显得尤为重要。...注释的添加 注释的添加是通过在定义表或列的时候在末尾加上 COMMENT 关键字来实现的,最长支持 1024 个字符。 可以在创建表的时候为表和列添加相应的注释。...'表的注释'; 执行上面的语句后创建了一个名为 test_comment 的表,并且为表和其中的 col1 列指定了相应的注释。...列注释的添加,更新 CHANGE 和 MODIFY 等效,区别在于 CHANGE 重写定义列,需要书写完整的列定义,包括新的列名称,即使你并不想修改列的免,而 MODIFY 则不用指定新的列名称。...通过 CHANGE 语法: mysql> ALTER TABLE test_comment CHANGE col1 col1 INT COMMENT '列的注释2'; Query OK, 0 rows
同事提了个需求,如下测试表,有code、cdate和ctotal三列,select * from tt;现在要得到code的唯一值,但同时带着cdate和ctotal两个字段。...distinct支持单列去重和多列去重,如果是单列去重,简明易懂,即相同值只保留1个,如下所示,select distinct code from tt;多列去重则是根据指定的去重列信息进行,即只有所有指定的列信息都相同...错误 [1064] [42000]: You have an error in your SQL syntax; check the manual that corresponds to your MySQL...MySQL不同版本sql_mode默认值可能是不同的,因此在数据库升级配合的应用迁移过程中,尤其要注意像only_full_group_by这种校验规则的改变,很可能是个坑。...本文关键字:#SQL# #去重#
3、设计数据库时所有表和字段必须添加注释 使用Comment从句添加表和列的备注,或直接在数据库连接工具的注释栏添加注释,从项目开始就进行数据字典的维护。...number); 2、添加表注释: Comment on table t1 is '个人信息'; 3、添加字段注释: comment on column t1.id is 'id';...数据库连接工具添加注释 4、单个表的数据量大小控制在500万以内 尽量控制单表数据量的大小,建议控制在500万以内;500万并不是MySQL数据库的极限,但数据量太多不利于对表结构进行修改...; 2)UNION ALL 不会再对结果集进行去重操作; 12、把复杂、较长的SQL 拆分为为多个小SQL 执行 1)大SQL在逻辑上比较复杂,是需要占用大量CPU 进行计算一条SQL语句; 2)在MySQL...六、MySQL数据库行为规范 1、超过100万行数据的批量操作(update delete insert),分多次进行 大批量操作可能回造成严重的主从延迟; binlog日志为row格式时会产生大量的日志
3、设计数据库时所有表和字段必须添加注释 使用Comment从句添加表和列的备注,或直接在数据库连接工具的注释栏添加注释,从项目开始就进行数据字典的维护。...number); -- 2、添加表注释: Comment on table t1 is '个人信息'; -- 3、添加字段注释: comment on column t1.id is 'id'; comment...,而Mysql最多允许关联61个表,建议不超过5个; 8、对同一列对象进行or 判断时,使用in 替代or in 的值只要涉及不超过500个,则in 操作可以更有效的利用索引,or 大多数情况下很少能利用到索引...; 2)UNION ALL 不会再对结果集进行去重操作; 12、把复杂、较长的SQL 拆分为为多个小SQL 执行 1)大SQL在逻辑上比较复杂,是需要占用大量CPU 进行计算一条SQL语句; 2)在MySQL...六、MySQL数据库行为规范 1、超过100万行数据的批量操作(update delete insert),分多次进行 大批量操作可能回造成严重的主从延迟; binlog日志为row格式时会产生大量的日志
基本设计规范 所有表用Innodb存储引擎 支持事务 行级锁 更好的恢复性 高并发的性能更好 数据库和表的字符集统一使用UTF-8,统一可避免乱码 所有表和字段添加注释( COMMENT从句) 尽量控制单表数据量...(不是MySQL的限制,是经验值) 处理方式:历史数据归档、分库分表 谨慎使用MySQL分区表 分区表:在物理上表现为多个文件,在逻辑上表现为一个表 问题:谨慎选择分区键,跨分区查询效率可能更低 建议:...在程序中生成随机值,再获取数据 禁止在 WHERE从句中队列进行函数转换和计算 导致无法使用索引 明显不会有重复值的用 UNION ALL而不是 UNION UNION会把所有数据放到临时表中后再进行去重操作...UNION ALL则不会做去重操作 拆分复杂的大SQL为多个小SQL 一个SQL只用一个CPU计算 拆分后可以并行执行 操作行为规范 超过100万行的批量写操作,要分批多次进行操作 注意之前提到的尽量合并操作是针对查询...大批量的可能会造成主从延迟 binlog日志为row格式时会产生大量的日志 避免产生大事务操作,造成锁定和大堵塞。
脉脉求职+微信聊天组合 红队队员去脉脉等求职平台,定位到目标单位的运维技术等人员,谎称自己是阿里、腾讯、华为高管,进行年薪百万的定向招聘,然后诱导至微信聊天,发送钓鱼邮件木马压缩包。...各种弱口令漏洞 sentinel弱口令、mysql的3306弱口令,但我未见到过外网的SQLServer的弱口令(推测原因是,如果存在弱口令,早就被外网的那些抓肉鸡战队给光顾了)、phpmyadmin弱口令...,此外还有一些网络设备的漏洞,就不一一列举了。...对于工控系统,不得不承认,有些红队人员内网横向能力很强,从文字描述看,他们就是奔着工控目标去的,从一个网段跳到另一个网段,每横向一步,都知道自己在内网的什么位置,脑海中逐步形成一个清晰的内网拓扑图。...也有的红队队员拿下工控系统,是在内网中扫一圈各种服务的弱口令、通过MS17-010打了几台服务器,提取了通用的密码或者hash值,然后再滚雪球批量扫描,内网大批量扫描发现了工控的web管理界面等等,无意中进入了工控段
,更好的恢复性,高并发性能更好 数据库的表和字符集统一使用UTF-8 兼容性更好,统一字符集可以避免由于字符集转换产生的乱码,不同的字符集进行比较之前需要进行转换会造成索引失效 所有表和字段都需要添加注释...10、减少同数据库的交互次数 数据库更适合处理批量操作 合并多个相同的操作到一起,可以提高处理效率 11、对应同一列进行or判断时,使用in代替or in的值不要超过500个in操作可以更有效的利用索引...2、UNION ALL不会再对结果集进行去重操作 15、拆分复杂的大SQL为多个小SQL 1、大SQL:逻辑上比较复杂,需要占用大量CPU进行计算的SQL 2、MySQL:一个SQL只能使用一个CPU...进行计算 3、SQL拆分后可以通过并行执行来提高处理效率 数据库操作行为规范 大批量操作可能会造成严重的主从延迟 主从环境中,大批量操作可能会造成严重的主从延迟,大批量的写操作一般都需要执行一定长的时间...避免产生大事务操作 大批量修改数据,一定是在一个事务中进行的,这就会造成表中大批量数据进行锁定,从而导致大量的阻塞,阻塞会对MySQL的性能产生非常大的影响。
设计表的时候,所有表和字段都添加相应的注释(SQL规范优雅) 这个好习惯一定要养成啦,设计数据库表的时候,所有表和字段都添加相应的注释,后面更容易维护。...尽量把所有列定义为NOT NULL(SQL规范优雅) 「NOT NULL列更节省空间」,NULL列需要一个额外字节作为判断是否为 NULL 的标志位。...如果修改字段含义或对字段表示的状态追加时,需要及时更新字段注释。(SQL规范优雅) 这个点,是阿里开发手册中,Mysql的规约。...21.如果修改/更新数据过多,考虑批量进行。...大批量操作会产生大事务,阻塞。 大批量操作,数据量过大,会把cpu打满。
在mysql运维操作中会经常使用到alter这个修改表的命令,alter tables允许修改一个现有表的结构,比如增加或删除列、创造或消去索引、改变现有列的类型、或重新命名列或表本身,也能改变表的注释和表的类型...下面就针对alter修改命令的使用做一梳理: 在mysql运维操作中会经常使用到alter这个修改表的命令,alter tables允许修改一个现有表的结构,比如增加或删除列、创造或消去索引、改变现有列的类型...、或重新命名列或表本身,也能改变表的注释和表的类型。...alter table 表名 ADD 列名 列的属性(如INT NOT NULL COMMENT '注释说明') 3)修改列的类型信息。...into 表名(指定字段) values(指定字段); insert into 表名 values(所有字段的插入值),(所有字段的插入值),(所有字段的插入值); //批量插入
兼容性更好,统一字符集可以避免由于字符集转换产生的乱码,不同的字符集进行比较前需要进行转换会造成索引失效 3、所有表和字段都需要添加注释 使用comment从句添加表和列的备注 从一开始就进行数据字典的维护...10、减少同数据库的交互次数 数据库更适合处理批量操作 合并多个相同的操作到一起,可以提高处理效率 11、对应同一列进行or判断时,使用in代替or in的值不要超过500个in操作可以更有效的利用索引...14、在明显不会有重复值时使用UNION ALL而不是UNION · UNION会把两个结果集的所有数据放到临时表中后再进行去重操作 · UNION ALL不会再对结果集进行去重操作 15、拆分复杂的大...1、超100万行的批量写(UPDATE、DELETE、INSERT)操作,要分批多次进行操作 · 大批量操作可能会造成严重的主从延迟 主从环境中,大批量操作可能会造成严重的主从延迟,大批量的写操作一般都需要执行一定长的时间...· 避免产生大事务操作 大批量修改数据,一定是在一个事务中进行的,这就会造成表中大批量数据进行锁定,从而导致大量的阻塞,阻塞会对MySQL的性能产生非常大的影响。
,高并发下性能更好 2、数据库和表的字符集统一使用UTF8 兼容性更好,统一字符集可以避免由于字符集转换产生的乱码,不同的字符集进行比较前需要进行转换会造成索引失效 3、所有表和字段都需要添加注释 使用...10、减少同数据库的交互次数 数据库更适合处理批量操作 合并多个相同的操作到一起,可以提高处理效率 11、对应同一列进行or判断时,使用in代替or in的值不要超过500个in操作可以更有效的利用索引...· 不推荐: · 推荐: 14、在明显不会有重复值时使用UNION ALL而不是UNION · UNION会把两个结果集的所有数据放到临时表中后再进行去重操作 · UNION ALL不会再对结果集进行去重操作...十一、数据库操作行为规范 1、超100万行的批量写(UPDATE、DELETE、INSERT)操作,要分批多次进行操作 · 大批量操作可能会造成严重的主从延迟 主从环境中,大批量操作可能会造成严重的主从延迟...· 避免产生大事务操作 大批量修改数据,一定是在一个事务中进行的,这就会造成表中大批量数据进行锁定,从而导致大量的阻塞,阻塞会对MySQL的性能产生非常大的影响。
,高并发下性能更好 2、数据库和表的字符集统一使用UTF8 兼容性更好,统一字符集可以避免由于字符集转换产生的乱码,不同的字符集进行比较前需要进行转换会造成索引失效 3、所有表和字段都需要添加注释 使用...10、减少同数据库的交互次数 数据库更适合处理批量操作 合并多个相同的操作到一起,可以提高处理效率 11、对应同一列进行or判断时,使用in代替or in的值不要超过500个in操作可以更有效的利用索引...14、在明显不会有重复值时使用UNION ALL而不是UNION · UNION会把两个结果集的所有数据放到临时表中后再进行去重操作 · UNION ALL不会再对结果集进行去重操作 15、拆分复杂的大...1、超100万行的批量写(UPDATE、DELETE、INSERT)操作,要分批多次进行操作 · 大批量操作可能会造成严重的主从延迟 主从环境中,大批量操作可能会造成严重的主从延迟,大批量的写操作一般都需要执行一定长的时间...· 避免产生大事务操作 大批量修改数据,一定是在一个事务中进行的,这就会造成表中大批量数据进行锁定,从而导致大量的阻塞,阻塞会对MySQL的性能产生非常大的影响。
,因为时间不允许去这么做。...| IP | 项目 | 部门 | 状态 | 2、资产指纹梳理 因为主机数量太大,如果每个资产单独去测试的话,时间代价太大,所以很有必要进行资产指纹梳理,这样如果发现某个漏洞,直接就可以为后面的批量漏洞利用提供条件了...当然其他漏洞也一样,这里我主要以我们测试的几个典型批量为例: SSH、FTP、MySQL、Zoomkeeper、MongoDB、Hadoop、Redis、Struts2、Weblogic、Docker、...3、通过日志检索、流量分析等发现了一些弱口令,利用这些弱口令批量测试了一遍云平台所有主机,发现大量SSH、MySQL、Redis弱口令。...举个例子:在Github上伪造个含公司信息的代码仓库,故意放些密码,比如MySQL密码,然后攻击队肯定会去GitHub搜索敏感信息,然后就会尝试利用。。。
,高并发下性能更好 2、数据库和表的字符集统一使用UTF8 兼容性更好,统一字符集可以避免由于字符集转换产生的乱码,不同的字符集进行比较前需要进行转换会造成索引失效 3、所有表和字段都需要添加注释 使用...10、减少同数据库的交互次数 数据库更适合处理批量操作 合并多个相同的操作到一起,可以提高处理效率 11、对应同一列进行or判断时,使用in代替or in的值不要超过500个in操作可以更有效的利用索引...2、UNION ALL不会再对结果集进行去重操作 15、拆分复杂的大SQL为多个小SQL 1、大SQL:逻辑上比较复杂,需要占用大量CPU进行计算的SQL 2、MySQL:一个SQL只能使用一个CPU...大批量操作可能会造成严重的主从延迟 主从环境中,大批量操作可能会造成严重的主从延迟,大批量的写操作一般都需要执行一定长的时间,而只有当主库上执行完成后,才会在其他从库上执行,所以会造成主库与从库长时间的延迟情况...避免产生大事务操作 大批量修改数据,一定是在一个事务中进行的,这就会造成表中大批量数据进行锁定,从而导致大量的阻塞,阻塞会对MySQL的性能产生非常大的影响。
领取专属 10元无门槛券
手把手带您无忧上云