mysql专题

mysql 获得指定数据库所有表名以及指定表的所有字段名

SELECTCOLUMN_NAME 列名,DATA_TYPE 字段类型,COLUMN_COMMENT 字段注释FROMinformation_schema. COLUMNSWHEREtable_name = 'sys_user' ## 表名AND table_schema = 'test'; ## 数据库/*获得指定表的所有字段*/SELECT*FROMinformation_schem

mysql:慢查询日志slow_query_log

1、慢查询日志:当查询超过一定的时间没有返回结果的时候,才会记录到慢查询日志中。默认不开启。采样的时候手工开启。可以帮助DBA找出执行慢的SQL语句 2、常用的参数详解: 注意:修改以下参数,需要重新启动数据库服务才会生效。 slow_query_log=off|on     --是否开启慢查询日志slow_query_log_file=filename --指定保存路径及文件名,默认为数据

docker搭建mysql主从配置

1.拉取mysql,这里使用5.7 docker pull mysql:5.7 2、在本地主机新建两个配置文件:my-master.cnf、my-slave.cnf my-master.cnf: [mysqld]log-bin = mysql-binserver-id = 1 my-slave.cnf: [mysqld]server-id = 2 注意:自己创建文件所在的路径。

MyBatis的update语句的返回值改为从匹配数改为受影响的记录数,向mysql连接添加useAffectedRows=true一个参数即可。

1、现象mysql更新update语句执行时,没有内容变更的话,会返回“0”;存在内容更新的话,会返回会返回有内容更新的记录数“1”。  2、mybatis默认情况,没有内容更新也是返回“1”。这么怎么会是”1“,不应该是”0“???其实默认mybatis返回的是 Rows matched “1”,而不是 “ 0 row affected ”中的 “0”。  3、那需要怎么才能让m

MySql删除重复数据只保留最小id的那条数据。某某公司的临时面试题

错误代码: DELETE FROMpayment WHEREserial IN ( SELECT serial FROM payment GROUP BY serial HAVING count(*) > 1 ) AND id NOT IN ( SELECT min( id ) AS id FROM payment GROUP BY serial HAVING count( serial )

mysql升序排序使null结果排最后

1.现象mysql升序排序的null结果排最前面   select * FROM payment ORDER BY serial ASC; -- null值最前面  结果: 2.现象mysql降序序排序的null结果排最后面 select * FROM payment ORDER BY serial DESC; -- NULL 值最后 结果:  3.使mysql升序排序的n

SpringMVC+Hibernate +MySql+ EasyUI实现CRUD

SpringMVC+Hibernate +MySql+ EasyUI实现CRUD 原文地址 http://my.oschina.net/xshuai/blog/345117

Mysql—运行sql的小技巧

本篇集中整理一下执行sql的小技巧,这种方式不仅带来了操作上的便捷,也可以保证数据可以数据的安全性。 1:查询数据(保证查询性能) 首先想先解释一下 SELECT * 和 SELECT t.id , t.name 的性能,结论:后者性能其实总体优于前者,不信可以自己去试验。 在查询的时候最好给表起个 别名,方便找到表中要查询的字段。执行sql的进行多条件查询的时候,使用类如Navicat

mysql学习—查询数据库中特定的值对应的表

遇到一个问题,我将问题抽象简单描述如下: 循环查询数据库所有表,查出字段中包含tes值的表,并且将test修改为hello? 因为自己不才找了很久也没有找到很好的方法,又对mysql的游标等用法不是很了解,在时间有限的情况下,发现了下面的方法,分享给大家: 1:查找 (1)使用工具 我使用的mysql的Navicat for MySQL的工具 (2)使用sql的语法 这个方式暂时

MySQL字段存储的内容是不区分大小写的,你知道吗?

做一个积极的人 编码、改bug、提升自己 我有一个乐园,面向编程,春暖花开! 文章目录 00 简单回顾01 一个例子02 解决方案03 总结04 参考资料 00 简单回顾 之前写过一篇关于mysql 对表大小写敏感的问题,其实在mysql中字段存储的内容是不区分大小写的,本篇进行简单的总结。 想回顾一下: MySQL在Linux下数据库名、表名、列名、别名大小写规则

MySQL存储的字段是不区分大小写的,你知道吗?

点击上方Java编程技术乐园,轻松关注! 及时获取有趣有料的技术文章 做一个积极的人编码、改bug、提升自己 我有一个乐园,面向编程,春暖花开! 00 简单回顾 之前写过一篇关于mysql 对表大小写敏感的问题(你有遇到过MySQL因大小写敏感导致的问题吗),其实在mysql中字段存储的内容是不区分大小写的,本篇进行简单的总结。 想回顾一下: MySQL在Linux下数据库名、表名、列名、别名大

一个因MySQL大小写敏感导致的问题

做一个积极的人 编码、改bug、提升自己 我有一个乐园,面向编程,春暖花开! 文章目录 00 MYSQL对大小写敏感01 一个表字母大小故事lower_case_file_systemlower_case_table_names 02 注意事项03 总结04 参考资料 00 MYSQL对大小写敏感 见字如面,见标题知内容。你有遇到过因为MYSQL对大小写敏感而被坑的体验

MySQL 的COUNT(x)性能怎么样?

做一个积极的人 编码、改bug、提升自己 我有一个乐园,面向编程,春暖花开! 文章目录 0 说明1 总结2 拓展 x 可以代表: 主键id、字段、1、* 0 说明 对于count(主键id)来说 innodb引擎会遍历整张表,把每一行的id值都取出来,返回给server层,server层判断id值不为空,就按行累加 对于count(字段)来说 如果这个字段

MySQL使用SELECT 语句不加ORDER BY默认是如何排序的?

大家好,我是阿飞云 怕什么真理无穷,进一步有近一步的欢喜 记录一个MySQL查询排序的问题,一个SQL语句没有加order by,那么查询出来的结果到底是按照什么规则排序的呢?查询了网上的一些资料,分享如下: •MyISAM 表 MySQL Select 默认排序是按照物理存储顺序显示的(不进行额外排序)。也就是说SELECT * FROM tbl – 会产生“表扫描”。如果表没有删除、替换、更

SpringBoot 学习四:macOS安装MySQL 以及报错解决

从MySQL官网下载Mysql,在本地安装好之后,用数据库连接工具Sequl Pro去连接数据库,发现报错了,报错信息有两种: Error1:Unable to connect to host 127.0.0.1 because access was denied.Double-check your username and password and ensure that access fro

Centos Mysql定时自动备份

一、备份准备&备份测试 1、备份目录准备 #mysql专用目录mkdir /mysql#mysql备份目录mkdir /mysql/backup#mysql备份脚本mkdir /mysql/backup/scripts#mysql备份文件mkdir /mysql/backup/files#mysql备份日志mkdir /mysql/backup/logs 2、备份脚本准备

Mysqldump 备份mysql数据库

1、mysqldump 安装 yum -y install mysql-client    / apt-get install mysql-client 2、使用mysqldump导出固定条件的数据库 (1)导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql (

docker之mysql连接 Authentication plugin ‘caching_sha2_password‘ cannot be loaded

1  1.docker exec -it mysql01(镜像别名) bash  3 // 进入mysql命令行  4   5  2.mysql -uroot -p 密码       6   7   // 修改加密规则 设置新密码  8   9  3.ALTER USER '账号'@'用户域' IDENTIFIED WITH mysql_native_password BY '新密码';   10

MYSQL的流程控制语句

一、准备数据 create database ifTest;use ifTest;create table test(id int primary key auto_increment,typeId int not null comment '产品类型:1-普通商品 2-礼品卡 3-非卖品',productName varchar(50) not null comment '产品名称');

keepalived+mysql实现双机互备高可用(一)

最近公司要求对原有项目进行重构,需要将mysql和keepalived安装在docker容器内,方便在客户环境的部署。于是学习了一番,在两台虚拟机的docker容器内搭建了mysql双机互备,并安装了keepalived,保障数据库的高可用。 大概的流程分3步走: 1.准备服务器 2.在容器内安装mysql+keepalived 3.设置mysql的双机互备和keepalived的高可用

mysql双机互备和keepalived高可用环境搭建(三)

因为我准备的是两台服务器,并将keepalived都安装在了docker容器内。正常情况下不同宿主机的容器之间是不能互相通信的。所以在配置双机互备和搭建keepalived环境之前需要先配置容器的网络,使之可以互相访问。 1.配置不同宿主机的容器互相访问 server1:192.168.20.134        docker0: 172.17.0.1 server2:192.168.20.

docker容器内安装mysql+keepalived(二)

(1)拉取centos7官方镜像                             docker pull centos:centos7                                              (2)以超级管理员启动centos                             docker run -itd -p 5000:22 --name kee

Linux搭建Tomcat+MySQL环境

以阿里云上最新安装好的Centos8为例,SSH工具是FinalShell 更新yum到阿里云的源 我这边安装好之后yum源已经是国内的了,所以实际上这一步可以省略,如果出现安装软件时下载速度很慢,可以通过这一步修改yum源 cd /etc/yum.repos.d 如下图所示 对着CentOS-Base.repo文件右键点打开,之后将https://mirrors.aliyun.com/re

使用mysql主从热备+keepalived服务+ipvsadm工具 实现 mysql高可用主备+负载均衡

目录 1、工作原理 2、环境准备 3、分别在主服务器和备用服务器上安装keepalived和ipvsadm 4、修改keepalived服务的配置文件 4.1 修改主服务器上的keepalive服务的配置文件 4.2 修改备用服务器上的keepalive服务配置文件 5、编写mysql监控脚本放到主服务器上 6、在主服务器和备用服务器上查看虚拟IP是否绑定到ens33网卡上。 7

Java连MySQL提示Access denied for user 'root'@'localhost' (using password: YES),但用CMD和Navicat可以访问MySQL成功

Java连mysql提示Access denied for user ‘root’@‘localhost’ (using password: YES),但用CMD和Navicat可以访问mysql成功 今天遇到个问题,一个Java项目,运行起来,登录报错Access denied for user ‘root’@‘localhost’ (using password: YES) 但是我的MySQ