
Mysql
文章平均质量分 56
Mysql
传而习乎
你知道的越多,你不知道的就越多
展开
-
Mysql的数值字符串的排序?关于mysql的“+0”操作?
mysql的“+0”操作,可以用到 数值字符串的排序中:(忽略文字,按数字排序,至于排序的准确性,看情况评估吧)的排序规则,那么就会出现如下的情况,9.0被排序成最大的了。在字段后加上+0后排序正确。原创 2022-10-19 17:44:19 · 1387 阅读 · 0 评论 -
SQLAlchemy 与 MySQL数据库事务隔离级别(Transaction Isolation Level)
SQLAlchemy学习笔记(一)为什么要使用SQLAlchemy?将你的代码抽象出来不依赖与数据库的类型和某种数据库自身的的独特性,SQLAlchemy提供了强大又通用的语句和类型,你不在需要考虑你所选用数据库的实现及其厂商。SQLAlchemy同样使得将数据逻辑从Oracle或者PostgreSQL到你的应用程序的数据库或者其他数据仓库。它将将对数据库的操作在提交给数据库之前进行了统一的规范和转义。这样就避免了一些常见的问题例如数据库注入攻击。SQLAlchemy通过两种主要的数据库访问方式原创 2021-06-16 18:13:25 · 2137 阅读 · 0 评论 -
【时间处理】mysql 语句中的时间格式化 与 Python的时间格式化 不同
1.想要在sql语句查询时就能拿到格式化的时间 1 SELECT DATE_FORMAT(b.borrow_addtime,'%Y-%m-%d') borrowAddTime,DATE_FORMAT(b.publish_datetime,'%Y-%m-%d %T') publishTime FROM B b 查找的相关描述: DATE_FORMA T(date, format) 根据格式串format 格式化日期或日期和时间值date,返回结果串。...原创 2021-06-09 17:10:35 · 556 阅读 · 0 评论 -
MySQL: max_allowed_packet 报错及配置方法
mysql根据配置文件会限制server接受的数据包大小。有时候大的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败,导致项目访问异常。查看目前的配置:进入mysql 命令行中运行:show VARIABLES like '%max_allowed_packet%';显示的结果为:+--------------------+---------+| Variable_name| Value|+-----------------...原创 2021-04-06 13:16:39 · 923 阅读 · 1 评论 -
SQL查询时 group_concat 报错 was cut by GROUP_CONCAT()
MySQL 设置group_concat_max_lenGROUP_CONCAT函数用于将多个字符串连接成一个字符串,在拼接成字符串时就会存在拼接长度的问题,mysql 默认的拼接最大长度为1024个字节,由于1024个字节会出现不够用的情况,所以有时需要去根据情况进行修改,方式如下。1、查看当前mysql group_concat_max_len进入mysql状态,输入:show variables like 'group_concat_max_len';如果未曾修改会得到下面结果.原创 2021-03-22 15:55:48 · 12980 阅读 · 0 评论 -
mysql5.x 查看及其解锁_被锁的表
[root@localhost ~]# mysql -u myroot -pEnter password:mysql> show OPEN TABLES where In_use > 0; //查看被锁的表:mysql> show processlist; //查看被锁的表的进程;mysql> kill 12641; //杀死进程有时候可能需要多杀几次;多执行几次show processlist;...原创 2021-02-09 16:31:22 · 156 阅读 · 0 评论 -
PyMySQL 和 MySQLdb 的区别
引入包: 1 2 importMySQLdb importMySQLdb.cursors 需要安装MySQLdb,所以你就在命令行输入: 1 pip installMySQLdb 但遗憾的是,你发现,出现了下面的错误:Could not find a version that satisfies the requirement MySQLdb (from versions: )No mat...原创 2021-02-09 16:28:35 · 1082 阅读 · 0 评论 -
pymysql多线程读写数据库报错:Packet sequence number wrong
【BUG】pymysql多线程读写数据库报错:Packet sequence number wrong :由于换了24核的服务器,因此在录入爬取的气象数据的时候想使用多线程,于是自学多线程Python的写法,中间就遇到了这个错误:Packet sequence number wrong这是因为多线程共享了同一个数据库连接,但每个execute前没有加上互斥锁,解决方法如下:方法一:每个execute前加上互斥锁lock.acquire()cursor.execute(command,data)原创 2021-02-09 16:03:20 · 7236 阅读 · 1 评论 -
mysql 用FORMAT 格式化,数字结果带逗号,解决。python 将数字转换为带千分位逗号的处理方法;
1、sql语句查询数据库数据,使用Format格式化数值型数据,返回结果每超过三位会自动加逗号分隔。解决办法:convert(value, decimal(12,2))cast(value as decimal(12,2))可以转换的类型是有限制的。这个类型可以是以下值其中的一个:二进制,同带binary前缀的效果 : BINARY字符型,可带参数 : CHAR()日期 : DATE时间: TIME日期时间型 : DATETIME...原创 2021-02-09 10:34:18 · 3610 阅读 · 1 评论 -
MySQL主从同步故障:cannot be converted from type ‘varchar(30(bytes))‘ to type ‘varchar(9(bytes) utf8)‘
总结:这个报错无非就是两个问题: 主从数据库的数据库不一致 或 数据表字段不一致原创 2021-01-28 17:57:02 · 5509 阅读 · 1 评论 -
MySQL主从同步故障:Slave_SQL_Running:No 两种解决办法
mysql> show slave status\G.......Relay_Log_File: localhost-relay-bin.000535Relay_Log_Pos: 21795072Relay_Master_Log_File: localhost-bin.000094Slave_IO_Running: YesSlave_SQL_Running:...原创 2021-01-28 17:39:58 · 16329 阅读 · 8 评论 -
MySQL: server has gone away 问题的解决方法
mysql出现ERROR : (2006, 'MySQL server has gone away') 的问题意思就是指client和MySQL server之间的链接断开了。造成这样的原因一般是sql操作的时间过长,或者是传送的数据太大(例如使用insert ... values的语句过长, 这种情况可以通过修改max_allowed_packed的配置参数来避免,也可以在程序中将数据分批插入)。产生这个问题的原因有很多,总结下网上的分析:原因一. MySQL 服务宕了判断是否属于这.原创 2021-01-28 11:44:21 · 17998 阅读 · 1 评论 -
mysql中find_in_set()函数的使用
举例:有个文章表里面有个type字段,它存储的是文章类型,有 1头条、2推荐、3热点、4图文等等 。现在有篇文章他既是头条,又是热点,还是图文,type中以 1,3,4 的格式存储。那我们如何用sql查找所有type中有4的图文类型的文章呢??这就要我们的 find_in_set 出马的时候到了。以下为引用的内容:select * from article where FIND_IN_SET('4',type)-----------------------------------------原创 2021-01-26 18:24:42 · 191 阅读 · 0 评论 -
MySQL decimal / int / number 转字符串
有时客户需要流水数据,当导出为excel的时候,客户编号等很长数字的栏位,被excel变成科学记数法,无法正常查看。因此,需要将Oracle/MySQL中的decimal/int 转 varchar,这样在excel中就可以放心查看了。一、Oracle的转换方法:1.新建表,并插入数据drop table test purge;create table test(id number);insert into test values(13913613345);select * from原创 2021-01-21 18:04:15 · 4334 阅读 · 0 评论 -
sqlalchemy 经常报错:Can't reconnect until invalid transaction is rolled back
[E 190805 16:14:33 web:1524] Uncaught exception POST /dictinfo (127.0.0.1) HTTPServerRequest(protocol='http', host='127.0.0.1:8000', method='POST', uri='/dictinfo', version='HTTP/1.1', remote_ip=...原创 2019-08-09 19:12:34 · 5386 阅读 · 1 评论 -
MySQL Server 5.5 主从同步报错unknown variable master-host
nightelveMySQLServer5.5主从同步报错unknownvariable'master-host=xxx.xxx.xxx.xxx'Mysql版本从5.1.7以后开始就不支持“master-host”类似的参数在从库上执行如下命令;changemastertomaster_host='masterIP',master_user='slave',ma...原创 2019-07-10 15:37:25 · 754 阅读 · 0 评论 -
在window配置MySQL5.7主从复制遇到错误及解决方法
Xu小开在window环境下配置MySQL5.7主从复制同步遇到错误及解决方法在MySQL5.7环境下 主从复制模式,从服务器重启后发现备份停止手动输入mysql> start slave; #开启复制结果为:Query OK, 0 rows affected (0.00 sec)然而输入mysql>SHOW SLAVE STATUS\G ...原创 2019-07-10 15:34:11 · 258 阅读 · 0 评论 -
SQLite : 更新CentOS的SQLite版本
提示:在更新sqlite3时,最好先卸载原先的sqlite3,然后再重装;因为上次我使用以下方法更新后,启动项目后,一直无法调用新版的sqlite3,于是考虑到以下两种可能性:1、以下的更新方式,安装时没有覆盖安装;而是安装时,目录没有直接安装到 /usr而是安装在了 /usr/local/下;由于系统引用模块的优先级别 /usr/bin高于 /usr/loacl/b...原创 2020-02-13 18:36:14 · 1987 阅读 · 0 评论 -
SQL数据库表查询,案例备查表
-- 其貌不扬,全是干货1、一个SQL查询出每门课程的成绩都大于80的学生姓名name kechengfenshu张三 语文81张三 数学75李四 语文76李四 数学90王五 语文81王五 数学100王五 英语90...原创 2019-05-06 21:05:41 · 1530 阅读 · 0 评论 -
mysql 主从复制、读写分离、模拟宕机、备份恢复方案生产环境实战
本章内容:主从复制 简介原理 备份主库及恢复从库,配置从库生效 读写分离 如果主宕机了,怎么办? 双主的情况 MySQL 备份及恢复方案 备份单个及多个数据库 mysqldump 的常用参数 如何增量恢复呢? 增量恢复的必要条件 生产环境 mysqldump 备份命令 恢复喽一、MySQL主从复制1、简介我们为什么要用主从复制?主从复制目的:...原创 2019-07-10 15:17:14 · 641 阅读 · 0 评论 -
Mysql主从配置,实现读写分离
1 mysql>create user repl; //创建新用户2 //repl用户必须具有REPLICATION SLAVE权限,除此之外没有必要添加不必要的权限,密码为mysql。说明一下192.168.0.%,这个配置是指明repl用户所在服务器,这里%是通配符,表示192.168.0.0-192.168.0.255的Server都可以以repl用户登陆主服务器。当然你也可以指定...原创 2019-07-10 15:12:32 · 251 阅读 · 0 评论 -
mysql 查询后根据值的不同进行判断与修改,SQL中的条件判断语句(case when zhen)用法
需求:mysql 查询后根据值的不同进行判断与修改语法结构:SQL中的条件判断语句(case when zhen)用法SELECTA.品号,属性,CASEWHENA.属性='S'THENB.价格WHENA.属性='P'THENC...原创 2019-12-05 16:25:50 · 7539 阅读 · 0 评论 -
mysql查询结果转为字典格式、MySQL查询结果返回字典类型的方法
情况一:使用python查询mysql数据库的时候,默认查询结果没有返回表字段名称,不方便使用。为了方便使用一般会选择将查询结果加上字段名称以字典组的方式返回查询结果。实现如下:def dict_fetchall(cursor): "Return all rows from a cursor as a dict" columns = [col[0] for co...原创 2019-11-25 17:21:14 · 3121 阅读 · 0 评论 -
MySQL服务器主从数据库同步配置:5.5版本前的配置方式,5.5后不支持本文的配置参数,只能使用命令来设置主从
MySQL服务器主从数据库同步配置:5.5版本前的配置方式,5.5后不支持本文的配置参数,只能使用命令来设置主从如果在5.5版本以上设置以下参数,会导致MySQL服务 重启/重启 失败(报错为:丢失pid,pid文件不可写);首先需要在同一个局域网内的两台机器(当然也可以用一台机器虚拟两台机器出来),都安装上mysql服务。主机A: 192.168.1.100从机B: ...原创 2019-08-16 18:30:32 · 172 阅读 · 0 评论 -
【精】Mysql主从配置,实现读写分离
大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢失的话,后果更是 不堪设想。这时候,我们会考虑如何减少数据库的联接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:memcached,如果资金丰厚的话,必然会想到假设服务器...原创 2019-08-16 18:30:44 · 128 阅读 · 0 评论 -
配置mysql 允许远程连接的方法(包括服务器配置、MySQL数据库配置)
一般情况分三个地方准备,MySQL数据库,防火墙,还有你的服务器主机的准备操作系统为centos6.5。其他系统大致差不多。1:在服务器中安装mysql,具体安装过程,请自行查询。安装好后,输入mysql -u root -p,再输入密码(输入密码时,密码不会显示)就会进入到MySQL如下界面。2:进入MySQL后,show databases;use mysql;sel...原创 2019-08-16 18:30:50 · 22767 阅读 · 1 评论 -
【MySQL】使用docker安装MySQL时的报错:Can't connect to local MySQL server through socket '/var/run/mysqld/mysql
Ubuntu使用docker安装完mysql后登录时会遇到如下错误root1@ubuntu:~$ mysql -uroot -pEnter password: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such fi...原创 2019-07-05 17:23:47 · 28461 阅读 · 15 评论 -
MySQL 报错 You can‘t specify target table for update in FROM clause解决办法
这篇文章主要介绍了mysql中You can’t specify target table for update in FROM clause错误解决方法,需要的朋友可以参考下MySQL中You can't specify target table for update in FROM clause错误的意思是说,不能先select出同一表中的某些值,再update这个表(在同一语句中)。 例如下面这个sql:delete from tbl where id in(...原创 2021-01-15 14:15:19 · 29837 阅读 · 1 评论 -
【MySQL】卸载重装时,报错:--initialize specified but the data directory has files in it.
mysql错误initialize specified but the data我用的mysql5.7.12版本,安装时在mysqld --initialize的时候出现了--initialize specified but the data directory has files in it. Aborting.这个错误。mysql的my.cnf 中的配置时:datadir = /usr/...原创 2019-07-05 17:21:30 · 1359 阅读 · 0 评论 -
【MySQL】在阿里云的服务器linux下安装mysql和卸载mysql
一、MySQL的安装和配置1、安装rpm包rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm2、安装mysqlyum -y install mysql-community-server3、加入开机启动(就是电脑启动的时候,自动启动MySQL服务)systemctl enable...原创 2019-07-05 17:15:54 · 764 阅读 · 0 评论 -
【MySQL】修改配置后,重启MySQL报错[ERROR] The server quit without updating PID file
问题:在没有修改配置时,MySQL启动正常;错1:修改配置后MySQL启动不了,报错:[root@localhost mysql]# service mysql restart Starting MySQL...[ERROR] The server quit without updating PID file (/usr/local/mysql/data/mysqld.pid)....原创 2019-07-05 17:01:37 · 3134 阅读 · 0 评论 -
SQL注入原理及防范
1.1.2 正文SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。首先让我们了解什...原创 2019-07-03 14:40:36 · 405 阅读 · 0 评论 -
HeidiSQL中文乱码解决
尚未解决:没来得及测试方法,我是用的老版本的heidiSQL,调设置未成功,新版应该可以的BUG如下:今天被HeidiSQL的中文乱码问题整的够呛。记录一下。也希望能帮助到其他小伙伴。1:我是使用Hibernate与数据库进行连接。关于Hibernate的映射中文乱码问题可以参考。http://blog.youkuaiyun.com/peditable/article/details/7047573。作者写的很详细。只不过在HeidiSQL的my.ini没有[mysql],所以只要在[m.原创 2020-12-08 18:59:03 · 5310 阅读 · 0 评论 -
Mysql、SQLServer 时间与字符串之间相互转换(时间处理)
1.时间转字符串DATE_FORMAT(日期,格式字符串)SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');2.字符串转时间STR_TO_DATE(字符串,日志格式)SELECT STR_TO_DATE('2019-01-20 16:01:45', '%Y-%m-%d %H:%i:%s');3.时间转时间戳selectunix_timestamp(now());4.字符串转时间戳selectunix_timestamp('2..原创 2020-10-21 09:48:34 · 14429 阅读 · 0 评论 -
Mysql 报错:出现Table ‘performance_schema.session_status‘ doesn‘t exist
在Centos下安装了mysql后,使用 数据库管理软件 HeidiSQL远程连接,报错:Table 'performance_schema.session_status' doesn't exist错误;解决办法1. 进入Mysql的安装目录的bin文件夹2. 打开cmd进入该目录执行mysql_upgrade -u root -p --force命令然后输入密码问题解决...原创 2020-09-09 18:00:52 · 1456 阅读 · 0 评论 -
linux下mysql忘记密码解决方案
一、写随笔的原因:之前自己服务器上的mysql很久不用了,忘记了密码,所以写一下解决方案,以供以后参考二、具体的内容:1. 检查mysql服务是否启动,如果启动,关闭mysql服务运行命令:ps -ef | grep -i mysql如果开着就运行关闭的命令:service mysqld stop2.修改mysql的配置文件my.conf一般在/etc目录下,运行命令:vi /etc/my.cnf,编辑文件在文件的[mysqld]标签下添...原创 2020-09-09 13:01:58 · 213 阅读 · 0 评论 -
MySQL定时备份脚本(实测可用)
最近需要对某服务的数据库数据进行备份,因此参考网上教程完成数据库备份脚本.因为服务的使用频率较低,因此设置定时任务,在每天的中午以及午夜时分进行备份操作.#!/bin/bash# 设置mysql的登录用户名和密码(根据实际情况填写)mysql_user="***"mysql_password="****"mysql_host="localhost"mysql_port="3306"mysql_charset="utf8mb4"# 备份文件存放地址(根据实际情况填写)backup_l原创 2020-07-16 15:01:52 · 1558 阅读 · 0 评论 -
mysql数据库备份恢复命令速查 mysql dump , source的用法
还原一个数据库:mysql -h localhost -u root -p123456 www备份一个数据库:mysqldump -h localhost -u root -p123456 www > d:/www2008-2-26.sql //以下是在程序中进行测试//$command = "mysqldump --opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $backupFile";$command="mysql..原创 2020-07-10 11:43:14 · 1076 阅读 · 0 评论 -
设置自动备份mysql数据库
设置自动备份mysql数据库低版本:1.安装gzip工具]# yum -y install gzip2.在mysql中创建一个备份的用户]# mysql -uroot -pMariaDB [(none)]> GRANT ALL ON zabbix.* TO beifenuser@localhost IDENTIFIED BY 'beifen321';MariaDB [(none)]> flush privileges;MariaDB [(none)]> exi原创 2020-06-01 18:04:32 · 325 阅读 · 0 评论 -
mysql数据库自动备份脚本(详解)
脚本内容:#!/bin/bash#功能说明:本功能用于备份mysql数据库#编写日期:2018/05/17PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/local/mysql/binexport PATH#数据库用户名dbuser='dbuser'#数据库密码dbpasswd='dbpasswd'#数据库名,可以定义多个数据库,中间以空格隔开,如:test test1 test2dbnam原创 2020-06-01 17:59:50 · 2258 阅读 · 0 评论