Mysql运行sql文件报2013错误的原因 一般都是版本不支持问题,我在开发过程中遇到过这个问题,同学用的mysql5.8 用他导出的sql文件在我的mysql5.6版本数据库运行就报2013错误,高版本向低版本导出运行,一般是空间内存不做,需要重新设置一下 解决办法 在要建数据库表的右键选择命令列界面(如下图) 然后输入 set global max_allowed_packet=268435456; ...
问题分析 首先幻读是什么? 根据MySQL文档上面的定义 The so-called phantom problem occurs within a transaction when the same query produces different sets of rows at different times. For example, if a SELECT is executed twice, but returns a row the second time that was not retur...
索引数组 用数字作为键名的数组一般叫做索引数组。用字符串表示键的数组就是下面要介绍的关联数组。索引数组的键是整数,而且从0开始以此类推。 例如: a=array(‘山东省’,‘临沂市’,‘罗庄区’); print_r($a); Array ( [0] => 山东省 [1] => 临沂市 [2] => 罗庄区 ) 数组的key从零开始 关联数组: a=array(‘aaa’=>‘haha’); print_r($a); Array ( [aaa] => haha ) 数组的ke...
这是在网上找到的一张流程图,写的比较好,大家可以先看图,然后看详细阅读下面的各个步骤。 执行流程: 1.连接验证及解析 客户端与MySQL Server建立连接,发送语句给MySQL Server,接收到后会针对这条语句创建一个解析树,然后进行优化,(解析器知道语句是要执行什么,会评估使用各种索引的代价,然后去使用索引,以及调节表的连接顺序)然后调用innodb引擎的接口来执行语句。 2.写undo log innodb 引擎首先开启事务,对旧数据生成一个反向的UPDATE的语句(如果是INSERT会生...
宝塔: 阿里云:找到控制台->左侧下面的安全组 然后添加3306端口: over!!!...
mysql 修改字段长度 alter table news modify column title varchar(130); alter table 表名 modify column 字段名 类型; 如:tplay_auser表里的sex 字段 将数据类型改为char长度为20 alter table tplay_auser modify column sex char (20)...
所有的数据库对象名称必须使用小写字母并用下划线分割(MySQL大小敏感,见名知意,最好不超过32字符)所有的数据库对象名称禁止使用MySQL保留关键字(如 desc、range、match、delayed 等,请参考 MySQL 官方保留字http://dev.mysql.com/doc/refman/5.7/en/keywords.html)临时库表必须以tmp为前缀并以日期为后缀(tmp_)备份库和库,必须以bak为前缀,日期为后缀(bak_)所有存储相同数据的列名和列类型必须一致。(在多个表中的字段...
文章来源:http://feiyan.info/16.html 关于MySQL索引的好处,如果正确合理设计并且使用索引的mysql是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓慢。还是以WordPress来说,其多个数据表都会对经常被查询的字段添加索引,比如wp_comments表中针对5个字段设计了BTREE索引。 一个简单的对比测试 以我...
在mysql5.0版本以上 UTF-8 :一个汉字等于3个字节,英文是一个字节 GBK:一个汉字等于2个字节,英文是一个字节...
左连接where只影向右表,右连接where只影响左表。Left Joinselect * from tbl1 Left Join tbl2 where tbl1.ID = tbl2.ID左连接后的检索结果是显示tbl1的所有数据和tbl2中满足where 条件的数据。简言之 Left Join影响到的是右边的表Right Joinselect * from tbl1 Right Join tbl2 where tbl1.ID = tbl2.ID检索结果是tbl2的所有数据和tbl1中满足where 条件...
自己的服务器能连接数据库,但是电脑的Navicat链接报错: 本地Navicat连接远程服务器的数据库出现1045-Access denied for user ‘root’@‘localhost’(using password:YES) 问题。并非一定是密码错误问题,也可能是数据库MySQL表的用户权限问题。 解决: use mysql;update user set host = '%' where user ='root';select host, user from mysql.user;/...
MySQL 数据库常用命令 1、MySQL常用命令 create database name; 创建数据库 use databasename; 选择数据库 drop database name 直接删除数据库,不提醒 show tables; 显示表 describe tablename; 表的详细描述 select 中加上distinct去除重复字段 mysqladmin drop databasename 删除数据库前,有提示。 显示当前mysql版本和当前日期 select version(),c...
今天上午遇到的问题 :mysql密码正确登录不进去,没有密码却能登进去 解决方法: 使用Navicat连接上该root权限的数据库 ,进入mysql 库的user 表 将 root用户的Host (127.0.0.1或者 local) 改为localhost !问题解决 ...
今天安装mysql5.7 ,服务器能连接上数据库。但是Navicat链接报错1130 猜想是无法给远程连接的用户权限问题。结果这样子操作mysql库,即可解决。特贴出来。。在本机登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称’%’。。 mysql -u root -p mysql>use mysql; mysql>select ‘host’ from user where user=‘root’; mysql>up...
今天闲着无聊进了一下之前项目的宝塔面板,不看不知道,负载和CPU一直处于100%状态,可把我吓坏了。 就一个小项目就这样了。 解决方案: 1.进入服务器,查看一下当前是什么进程占用的cpu过高导致的: 使用top命令 看到是mysql的原因 ,那就进入mysql,看一下,当前一直执行的sql语句,进行优化, 1:mysql -u root -p 进入mysql 2:show full processlist; 用这个命令查看当前正在执行的sql语句 看到,where条件都是 这个字段 ,应该是没加上...
在使用mysql数据库经常都会遇到这么一个问题,其它用户定义的存储过程,现在使用另一个用户却无法修改或者删除等;正常情况下存储过程的定义者对它有修改、删除的权限;但是其它的用户就要相于的授权,不然无法查看、调用; mysql 中使用用户A创建一个存储过程,现在想通过另一个用户B来修改A创建的存储过程;以下记录就是基于这样的情况产生的; 用户A对OTO3库的权限: mysql> show grants for 'a'@'%';+------------------------------------...
什么是动态SQL? 动态 SQL 是 MyBatis 的强大特性之一。顾名思义,就是会动的SQL,即是能够灵活的根据某种条件拼接出完整的SQL语句。这种类似于MySQL中的 case when then else then end.... 这种语法,能够根据某种条件动态的拼接出需要的SQL。至于Mybatis如何实现动态SQL呢,Mybatis提供了非常多的标签,能够让我们在XML文件中灵活的运用这些标签达到拼接SQL的目的。常用的标签 Mybatis为了能够让开发者灵活的写SQL也是费了一番功夫,定义了...
什么是数据库? 1.数据库是数据的仓库。 2.与普通的“数据仓库”不同的是,数据库依据“数据结构”来组织数据,因为“数据结构”,所以我们看到的数据是比较“条理化”的(比如不会跟以前的普通文件存储式存储成一个文件那么不条理化,我们的数据库分成一个个库,分成一个个表,分成一条条记录,这些记录是多么分明) 3.也因为其“数据结构”式,所以有极高的查找速率(比如B-Tree查找法),(由于专精,可以根据自己的结构特性来快速查找,所以对于数据库的查找会比较快捷;不像普通文件系统的“查找”那么通用) 4.如果与EXC...
今天在使用Node的express框架连接mysql数据库时碰到了以下错误: code: 'ER_ACCESS_DENIED_ERROR', errno: 1045, sqlMessage: Access denied for user 'root'@'localhost' (using password: YES), sqlState: '28000', fatal: true 经过几番查询最后才弄清楚时因为Mysql服务器通过拒绝访问进行响应,这就需要我们重置mysql的密码。 因此我们就...
在使用mysql创建自定义函数时遇到了以下错误 ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable) 经过查阅资料发现我们开启了b...
information_schema库:information_schema库中的表大都是temporory表,都是只读的,不能进行更新、删除和插入等操作,也不能加触发器,因为它们实际只是一个视图,不是基本表,没有关联的文件。例如: useinformation_schema;select table_rows from TABLES where TABLE_SCHEMA = '数据库名' AND TABLE_NAME = '表名'; 如果表使用的是InnoDB引擎,table_rows只是粗略估计值,...
MySQL5.7: 在MySQL配置文件中 my.ini 在[mysqld]标签里新增或修改: sql_mode = NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 重启MySQL。 MySQL8.0: 执行sql语句: set @@GLOBAL.sql_mode=’’;(是英文状态下的两个单引号,这里显示错误了) set sql_mode =‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_...
IndustryNews::where('id', $id)->setInc('num',1);// 直接使用 setInc 或 setDec db('table')->where('id=1')->setInc('num',3); // 原数值加3 db('table')->where('id=1')->setInc('num'); // 原数值加1 db('table')->where('id=5')->setDec('num',5); // 原数值减5...
转换成日期格式 :在field里面写 date(create_time) as time 或者 date_format(create_time,%Y-%m-%d) as time 转换成年 -月格式 :在field里面写 date_format(create_time,%Y-%m) as time...
安装 以centos7 mysql5.6.40为例 rpm安装方式访问http://luopengtest.gotoip2.com/rpm/MySQL-5.6.40-1.el7.x86_64.rpm 下载rpm包使用rpm -ivh MySQL-5.6.40-1.el7.x86_64.rpm 安装 创建数据库 create database testdb1 charset utf8; 删除数据库 drop database testdb1; 创建用户 创建一个testu1用户,密码设置test123,授...
查询表里的所有数据 select * from 表名 根据id等字段查询数据 select * from 表名 where 字段 = 值 or 字段 = 值 (例):select * from 表名 where id = 1 or name = admin; 模糊查询 like % 值% (例):select * from 表名 where 字段 like %值%; //前后匹配 增加 insert into 表名 (字段1,字段2) values (值1,值2); (例):insert into 表名 ...
近期复习数据库知识,做出以下整理 1.数据表的设计 数据表的设计包括ER图、主键、数据类型、约束关系等 E-R图 E-R图也称为实体关系模型,主要用于定义数据的储存需求。该模型已经广泛用于关系数据库设计中。 E-R图由实体,属性,关系三个基本的元素构成。 实体间的联系由三种情况: 1-1:一对一 1-n:一对多 n-m:多对多 主键(primary Key): 数据库表要求表中的每一行记录都必须是唯一的,即在同一张表中不允许出现完全相同 的两条记录。在设计数据库时,为了保证记录的“唯一...
插入一条数据 DB::table(‘users’)->insert([ ‘name’ =>‘哈哈哈’, ‘password’ => ‘1111’ ]); 返回自增ID $userId = DB::table(‘users’)->insertGetId([ ‘name’ => str_random(10), ‘email’ => str_random(8) . ‘@qq.com’, ‘password’ => bcrypt(‘secret’) ]); 查询所有数据 ...
MySQL默认采用的是MyISAM。MyISAM不支持事务,不具有原子性,而InnoDB支持。InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事务,自动提交,这样会影响速度,所以最好是把多条SQL语句显示放在begin和commit之间,组成一个事务去提交。InnoDB支持数据行锁定,MyISAM不支持行锁定,只支持锁定整个表。即MyISAM同一个表上的读锁和写锁是互斥的,MyISAM并发读写时如果等待队列中既有读请求又有写请求,默认写请求的优先级高,即使读请求先到,所...
单个字段写法: 批量修改 将status字段 1改为11 。 2改为22。。。 这样写: update rf_by_project set status = case status when 1 then 11 when 2 then 22 when 3 then 33 when 4 then 44 end where status in(1,2,3,4) 多个字段写法: update rf_by_project set status = (case status when 1 then 11 when...
起因 今天我在使用group by分组查询时,发现了一个问题。 SELECT * from score GROUP BY sno HAVING COUNT(sno)>2; 然后报了一行错误 Expression #2 of SELECT list is not in GROUP BY clause........ which is not functionally dependent on columns in GROUP BY clause;this is incompatible with sq...
设置mysql密码 SET PASSWORD = PASSWORD(‘cs@123456‘); 设置mysql远程连接 GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘192.168.4.0‘ IDENTIFIED BY ‘cs@123456‘ WITH GRANT OPTION; 忘记mysql密码 UPDATE mysql.user SET Password=PASSWORD(‘123456‘) where USER=‘root‘; flush privileges; ...
User::find()->all(); 此方法返回所有数据;User::findOne($id); 此方法返回 主键 id=1 的一条数据(举个例子);User::find()->where(['name' => '小伙儿'])->one(); 此方法返回 ['name' => '小伙儿'] 的一条数据;where(['>', '字段名', '值'])查询比条件的User::find()->where(['name' => '小伙儿'])->all(...
Mysql运行sql文件报2013错误的原因 一般都是版本不支持问题,我在开发过程中遇到过这个问题,同学用的mysql5.8 用他导出的sql文件在我的mysql5.6版本数据库运行就报2013错误,高版本向低版本导出运行,一般是空间内存不做,需要重新设置一下 解决办法 在要建数据库表的右键选择命令列界面(如下图) 然后输入 set global max_allowed_packet=268435456; ...
首先我们看看MySQL体系架构,此架构对后续的理解帮助很大,此篇文章算是读书笔记,只有干货。 图片来自书MySQL引擎,可以发现有重要组件? 链接池组件 管理服务和工具组件 Sql接口组件 查询分析器组件 优化器组件 缓冲组件 插件式存储引擎 物理文件 下来看innoDB存储引擎 这个是几个重要版本变迁,主要注意1.2以后可以支持全文索引。 这是存储引擎的架构 存储引擎是个多线程模型,Master Thread是一个核心线程,负责将缓冲池的数据异步刷新到磁盘,保证数据的一致性。 io Thread In...
为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。 在实际开发中最为常见的设计范式有三个: 1.第一范式(确保每列保持原子性): 第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式。 2.第二范式(确保表中的每列都和主键相关) 第二范式在第一范式的基础之上更进一层。第二范式需要确保数据库表中的每一列都和主键相关,而...
最近项目上遇到一个这样的需求,优惠券管理,优惠券里面有涉及到商户信息,要以商户名称分组,时间倒序排序。添加优惠券时间倒序排序,以最新的数据显示在最前面(这里也要是商户组的最新一条显示在最前)。 根据产品经理的要求,写的原sql是这样的,如下: SELECT b.name as merchant_name,`a`.`update_time`,`b`.`is_qrcode`,b.status as mstatus,`a`.* FROM `ice_merchant_discount` `a` INNER ...
truncate table 表名; 清除表数据,将id改为1...
2019-12-11对varchar类型排序问题的解决 在mysql默认order by 只对数字与日期类型可以排序,但对于varchar字符型类型排序好像没有用了,下面我来给各位同学介绍varchar类型排序问题如何解决。 现象描述: select * from resultgroup where upUser = 'kkk' order by patientId desc 为什么会出现这种现象呢?就是因为 patientId 是varchar类型的 而order by 排序只针对数字 跟日期排序的...
mysql允许远程连接 1、cmd 2、cd C:\Program Files\MySQL\MySQL Server 5.7\bin (bin路径) 3、输入:MySQL -uroot -p123456 4、输入:grant all PRIVILEGES on test_db.* to root@'192.168.1.101' identified by '123456'; 5、输入:flush privileges; 要有分号 http://www.cnblogs.com/zhangzhu/archi...
文章来源:http://www.2cto.com/database/201212/173288.html http://www.jb51.net/article/69676.htm 本文主要讲述了如何加速动态网站的MySQL索引分析和优化。 一、什么是索引? 索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存。如果没有索引,执行查询时MySQL必须从第一个记录开始扫描整个表的所有记录,直至找到符合要求的记录。表里面的...
1.insert介绍 insert into (字段名) values (值) 例: create table test ( id int(4) not null auto_increment, name char(20) not null, primary key(id) ) ; 1.1)按列名插入 1.2)不指定列名,则需按顺序插入 1.3)支持批量插入(可作为研发优化点) 1.4)删除数据 2.备份数据库dump介绍 dump把数据库操作以SQL语句保存下来,理论上是逻辑备份 3...