Welcome 微信登录

首页 / 数据库 / MySQL

Linux利用UDF库实现Mysql提权

Linux利用UDF库实现Mysql提权

环境:os:linux(bt5)database:mysql简述:通过自定义库函数来实现执行任意的程序,这里只在linux下测试通过,具体到windows,所用的dll自然不同。要求:在mysql库下必须有func表,并且在‑‑skip‑grant‑tables开启的情况下,UDF会被禁止;过程: 得到插件库路径 找对应操作系统的udf库文件 利用udf库文件加载函数并执行命令1,得到插件库路径mysql&g...
mysql之TIMESTAMP(时间戳)用法详解

mysql之TIMESTAMP(时间戳)用法详解

一、TIMESTAMP的变体TIMESTAMP时间戳在创建的时候可以有多重不同的特性,如:1.在创建新记录和修改现有记录的时候都对这个数据列刷新:TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP2.在创建新记录的时候把这个字段设置为当前时间,但以后修改时,不再刷新它:TIMESTAMP DEFAULT CURRENT_TIMESTAMP3.在创建新记录的时候把这个字段设置为0,以...
mysql分表和分区的区别浅析

mysql分表和分区的区别浅析

一、什么是mysql分表和分区什么是分表,从表面意思上看呢,就是把一张表分成N多个小表什么是分区,分区呢就是把一张表的数据分成N多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上二、mysql分表和分区有什么区别呢1、实现方式上a)mysql的分表是真正的分表,一张表分成很多表后,每一个小表都是完正的一张表,都对应三个文件,一个.MYD数据文件,.MYI索引文件,.frm表结构文件。复制代码 代码如下:[root@BlackGhost test]#...
MySQL性能优化配置参数之thread_cache和table_cache详解

MySQL性能优化配置参数之thread_cache和table_cache详解

一、THREAD_CACHE MySQL里面为了提高客户端请求创建连接过程的性能,提供了一个连接池也就是 Thread_Cache池,将空闲的连接线程放在连接池中,而不是立即销毁.这样的好处就是,当又有一个新的请求的时候,mysql不会立即去创建连接 线程,而是先去Thread_Cache中去查找空闲的连接线程,如果存在则直接使用,不存在才创建新的连接线程.有关Thread_Cache在MySQL有几个重要的参数,简单介绍如下:thread_cache_s...
MySQL性能优化之max_connections配置参数浅析

MySQL性能优化之max_connections配置参数浅析

MySQL的max_connections参数用来设置最大连接(用户)数。每个连接MySQL的用户均算作一个连接,max_connections的默认值为100。本文将讲解此参数的详细作用与性能影响。与max_connections有关的特性MySQL无论如何都会保留一个用于管理员(SUPER)登陆的连接,用于管理员连接数据库进行维护操作,即使当前连接数已经达到了max_connections。因此MySQL的实际最大可连接数为max_connection...
使用Memcache缓存mysql数据库操作的原理和缓存过程浅析

使用Memcache缓存mysql数据库操作的原理和缓存过程浅析

对于大型网站如facebook,ebay等网站,如果没有Memcache做为中间缓存层,数据访问不可能吃得消,对于一般网站,只要具备独立的服务器,完全可以通过配置Memcache提高网站访问速度和减少数据库压力,这里主要讨论一下Memcache和MySQL数据库交互过程的流程关系,了解Memcache的中间缓存层作用,从而深入了解Memcache机制原理。Memcache和MySQL交互流程图如上图,传统的查询方法是直接查询数据库,数据库将结果返回给查询语...
MySQL性能优化之table_cache配置参数浅析

MySQL性能优化之table_cache配置参数浅析

table_cache是一个非常重要的MySQL性能参数,它在5.1.3之后的版本中叫做table_open_cache。table_cache主要用于设置table高速缓存的数量。由于每个客户端连接都会至少访问一个表,因此此参数的值与max_connections有关。缓存机制当某一连接访问一个表时,MySQL会检查当前已缓存表的数量。如果该表已经在缓存中打开,则会直接访问缓存中的表已加快查询速度;如果该表未被缓存,则会将当前的表添加进缓存并进行查询。在...
mysql中复制表结构的方法小结

mysql中复制表结构的方法小结

mysql中用命令行复制表结构的方法主要有一下几种:1.只复制表结构到新表CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2或者CREATE TABLE 新表 LIKE 旧表2.复制表结构及数据到新表 CREATE TABLE 新表 SELECT * FROM 旧表 3.复制旧表的数据到新表(假设两个表结构一样) INSERT INTO 新表 SELECT * FROM 旧表4.复制旧表的数据到新表(假设两个表结构不一样)...
Mysql之SQL Mode用法详解

Mysql之SQL Mode用法详解

一、Mysql SQL Mode简介通常来说MySQL服务器能够工作在不同的SQL模式下,并能针对不同的客户端以不同的方式应用这些模式。这样,应用程序就能对服务器操作进行量身定制以满足自己的需求。这类模式定义了MySQL应支持的SQL语法,以及应该在数据上执行何种确认检查。这样,就能在众多不同的环境下、与其他数据库服务器一起更容易地使用MySQL。可以使用“--sql-mode="modes"”选项,通过启动mysqld来设置默认的SQL模式。而从MySQ...
mysql数据库应付大流量网站的的3种架构扩展方式介绍

mysql数据库应付大流量网站的的3种架构扩展方式介绍

数据库扩展大概分为以下几个步骤:1、读写分离:当数据库访问量还不是很大的时候,我们可以适当增加服务器,数据库主从复制的方式将读写分离;2、垂直分区:当写入操作一旦增加的时候,那么主从数据库将花更多的时间的放在数据同步上,这个时候服务器也是不堪重负的;那么就有了数据的垂直分区,数据的垂直分区思路是将写入操作比较频繁的数据表,如用户表_user,或者订单表_orders,那么我们就可以把这个两个表分离出来,放在不同的服务器,如果这两个表和其他表存在联表查询,那...
MySQL对limit查询语句的优化方法

MySQL对limit查询语句的优化方法

当我们的网站达到一定的规模时,网站的各种优化是必须要进行的。而网站的优化中,针对数据库各种优化是最重点的了。下面作者将要和大家分享一下MySQL数据库中的查询语句有关limit语句的优化。大家都知道一般limit是用在分页的程序的分页上的,当你的应用数据量够小的时候,也许你感觉不到limit语句的任何问题,但当查询数据量达到一定程度的时候,limit的性能就会急剧下降。这个是通过大量实例得出来的结论。下面通过具体的案例来说明,这里是对同一张表在不同的地方取...
mysql优化limit查询语句的5个方法

mysql优化limit查询语句的5个方法

mysql的分页比较简单,只需要limit offset,length就可以获取数据了,但是当offset和length比较大的时候,mysql明显性能下降1.子查询优化法先找出第一条数据,然后大于等于这条数据的id就是要获取的数据 缺点:数据必须是连续的,可以说不能有where条件,where条件会筛选数据,导致数据失去连续性,具体方法请看下面的查询实例:复制代码 代码如下:mysql> set profiling=1;Query OK, 0 ro...
数据库中的SELECT语句逻辑执行顺序分析

数据库中的SELECT语句逻辑执行顺序分析

引言 这不是一个什么多深的技术问题,多么牛叉的编程能力。这跟一个人的开发能力也没有非常必然的直接关系,但是知道这些会对你的SQL编写,排忧及优化上会有很大的帮助。它不是一个复杂的知识点,但是一个非常基础的SQL根基。不了解这些,你一直用普通水泥盖房子;掌握这些,你是在用高等水泥盖房子。 然而,就是这么一个小小的知识点,大家可以去调查一下周围的同事朋友,没准你会得到一个“惊喜”。 由于这篇文章是突然有感而写,下面随手编写的SQL语句没有经过测试。 看...
将 Ghost 从 SQLite3 数据库迁移到 MySQL 数据库

将 Ghost 从 SQLite3 数据库迁移到 MySQL 数据库

下面我们就来说说如何从 SQLite 迁移到 MySQL 。准备首先你要已经安装好 MySQL 数据库。如果你用的是 Ubuntu 系统,请参考这篇文章。其他系统请参考各自对应的文档。导出当前数据进入 http://your-domain.com/ghost/debug 页面:点击蓝色的 EXPORT 按钮将当前数据库中的所有数据导出并下载到本地,默认文件名是 GhostData.json 。切换数据库配置编辑 config.js 文件,在 product...
MySQL 删除数据库中重复数据方法小结

MySQL 删除数据库中重复数据方法小结

刚开始,根据我的想法,这个很简单嘛,上sql语句delete from zqzrdp where tel in (select min(dpxx_id) from zqzrdp group by tel having count(tel)>1);执行,报错!!~!~异常意为:你不能指定目标表的更新在FROM子句。傻了,MySQL 这样写,不行,让人郁闷。难倒只能分步操作,蛋疼以下是网友写的,同样是坑爹的代码,我机器上运行不了。1. 查询需要删除的记录...
MySQL复制表结构和内容到另一张表中的SQL语句

MySQL复制表结构和内容到另一张表中的SQL语句

1.复制表结构及数据到新表复制代码 代码如下:CREATE TABLE 新表SELECT * FROM 旧表 2.只复制表结构到新表复制代码 代码如下:CREATE TABLE 新表SELECT * FROM 旧表 WHERE 1=2即:让WHERE条件不成立.方法二:(低版本的mysql不支持,mysql4.0.25 不支持,mysql5已经支持了)复制代码 代码如下:CREATE TABLE 新表LIKE 旧表 3.复制旧表的数据到新表(假设两个表结构...
<< 101 102 103 104 105 106 107 108 109 110 >>