mysql数据库

Centos7重置Mysql 8.0.1 root 密码

大城市里の小女人 提交于 2020-01-08 04:49:11
问题产生背景: 安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码;找了网上好多资料都不尽相同,根据自己的问题总结如下: 第一步:修改配置文件免密码登录mysql [html] view plain copy vim /etc/my.cnf 1.2 在 [mysqld]最后加上如下语句 并保持退出文件; [html] view plain copy skip-grant-tables 1.3 重启mysql服务: [html] view plain copy service mysqld restart 第二步免密码登录到mysql上;直接在命令行上输入: [html] view plain copy mysql //或者 mysql -u root -p //password直接回车 第三步: 给root用户重置密码; 3.1 首先查看当前root用户相关信息,在mysql数据库的user表中; [html] view plain copy select host, user, authentication_string, plugin from user; host: 允许用户登录的ip‘位置’%表示可以远程; user:当前数据库的用户名; authentication_string: 用户密码;在mysql 5.7

从xtrabackup备份恢复单表

强颜欢笑 提交于 2020-01-08 02:16:48
目前对MySQL比较流行的备份方式有两种,一种上是使用自带的mysqldump,另一种是xtrabackup,对于数据时大的环境,普遍使用了xtrabackup+binlog进行全量或者增量备份,那么如何快速的从xtrabackup备份中恢复单张表呢?从mysql 5.6版本开始,支持可移动表空间(Transportable Tablespace),利用这个功能也可以实现单表的恢复,下面进行从备份中恢复单张innodb表进行演练。 1. 针对InnoDB表恢复 2. 开启了参数innodb_file_per_table 3. 安装工具:mysql-utilities,其中mysqlfrm可以读取表结构。 进行mysql-utilities安装: yum install mysql-utilities -y 创建一个测试,往里面插入数据后进行备份: <test>(root@localhost) [xuanzhi]> show create table tb1\G *************************** 1. row *************************** Table: tb1 Create Table: CREATE TABLE `tb1` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` char(10)

Linux配置安装

*爱你&永不变心* 提交于 2020-01-07 23:56:45
1. 安装 jdk 1.1 卸载 : 使用 java version 查看虚拟机是否有 jdk 环境 , 存在先卸载 : 1. 首先我的系统是 CenOS7, 安装完成后 , 先打开终端 , 切换到管理员账号 , 命令如下图 2. 找出带 java 关键字的安装包 , 命令是 :rpm -qa|grep java, 会出现如下结果 : 3. 运行如下命令进行卸载 , 命令是 : yum -y remove java* 1.2 安装 上传到 ftp, 然后解压安装 tar -zxvf jdk-8u221-linux-x64.tar ( jdk 包名) 配置环境变量 , 打开 vi /etc/profile 在文件结尾添加 注意是使用“ : ”分隔 export JAVA_HOME=/home/ddqy/tools/jdk1.8 export JRE_HOME=$JAVA_HOME/jre export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 让文件生效 source /etc/profile 目录以及子目录授予 root 权限 chown root:root -R /home/tina/tools/jdk1.8 查看 jdk 是否安装成功

MySQL存储引擎MyISAM和InnoDB

拟墨画扇 提交于 2020-01-07 23:36:26
存储引擎概念介绍 MySQL中的数据用各种不同的技术存储在文件中,每一种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力,这些不同的技术以及配套的功能在MySQL中称为存储引擎 存储引擎就是MySQL将数据存储在文件系统中的存储方式或者存储格式————因此适用的场景也不一样 目前MySQL常用的两种存储引擎 MyISAM InnoDB 存储引擎:一种基础的驱动力,存储技术:存储机制、索引技巧、锁定水平。 mysql存储引擎是mysql数据库服务器中的组建,负责为数据库执行实际的数据I/O操作 使用特殊存储的主要优点之一在于:仅需要提供特殊应用所需的特性,数据库中的系统开销较小,具有更有效和更高的数据库性能 mysql系统中,存储引擎处于文件系统之上,在数据保存到数据文件之前会传输到存储引擎,之后按照各个存储引擎的存储格式进行储存 前后端的开发语言去提取拿取数据,这就需要装驱动,,具体的对象叫connector连接者 connection pool 叫连接池,类似所谓的空闲的线程或者进程去进行连接,在里面回房多个被连接对象,以备连接,并且节省响应时间,优化访问效率 使用线程或者进程去连接,链接需要媒介载体,就是sock通信文件,以提供pid文件,所有的线程都需要sock文件去管理, 数据放在磁盘上,在逻辑层面上放在file system 中

春招必备系列题:MySQL+锁+Redis+并发编程,拿下几个offer没问题

 ̄綄美尐妖づ 提交于 2020-01-07 21:27:48
已经迎来了2020年,相信对于大多数的程序员来说,最紧张的就是“春招”又要来临,马上迎来“金三银四”,现在也正是时候要开始准备了。春招,是一年中进大厂的最好时机,所以想要抓住这次机会,一定要提前做好准备工作。关于春招,最常问的系列题,今天帮你们准备了一套,带你们过关斩将,拿下几个offer没一点问题! 如果您需要我说的这些资料,加入我的java架构师训练营群( 859765394 )即可免费获取到,点击群号即可免费获取! 春招必备系列题之MySQL55题 Mysql 的技术特点是什么? Heap 表是什么? Mysql 服务器默认端口是什么? 与 Oracle 相比,Mysql 有什么优势? 如何区分 FLOAT 和 DOUBLE? 主键和候选键有什么区别? 如何使用 Unix shell 登录 Mysql? myisamchk 是用来做什么的? MyISAM Static 和 MyISAM Dynamic 有什么区别? LIKE 声明中的%和_是什么意思? ...... Mysql 如何优化 DISTINCT? 如何输入字符为十六进制数字? 如何显示前 50 行? 可以使用多少列创建索引? NOW()和 CURRENT_DATE()有什么区别? 什么样的对象可以使用 CREATE 语句创建? 面试专题: 春招必备系列之锁(乐观锁与悲观锁) 何谓悲观锁与乐观锁

MySQL 字符集和校验规则工作流程

一曲冷凌霜 提交于 2020-01-07 20:40:34
MySQL 字符集和校验规则工作原理 字符编码相关参数 数据流中的转码过程 校验规则 Tips:字符集和校验规则总是相伴的 一 从简单的建库语句开始 CREATE DATABASE [IF NOT EXISTS] <db_name> [[DEFAULT] CHARACTER SET <db_charset>] [[DEFAULT] COLLATE <db_collation>]; db_name : 数据库名 必填 db_charset:数据库的字符集 缺省为服务器字符集 db_collation:数据库的校验规则 缺省为服务器校对规则 二 字符集和字符编码是什么? 字符编码:将特定的字符与二进制码建立一一映射的集合就是字符集。每种字符集对应该种字符集的编码方式。 常见的字符集有 仅支持英文和特殊字符的ASCII、支持中英文的GBK、支持世界所有字符的Unicode等等<UTF-8是Unicode字符集的子集,他们不是两种编码方式>。 以ASCII字符集为例 它基于罗马字母表的编码方式,他不能表示中文仅仅包含了 全部的英文大小写和为数不多的特殊符号,每个字符一个字节低7位为编码位最高位保留,有些地方最高位做了扩充。增添了一些表格符号、运算符等。总而言之1个字节 8bit 表示一个字符,因为一一对应,所有一共有 2^7个字符。扩展字符集拥有2^8。 三 查看MySQL编码方式

sysbench 压力测试

本小妞迷上赌 提交于 2020-01-07 19:45:29
sysbench支持以下几种测试模式: 1、CPU运算性能 2、磁盘IO性能 3、调度程序性能 4、内存分配及传输速度 5、POSIX线程性能 6、数据库性能(OLTP基准测试) sysbench版本: [root@127-0-0-1 sysbench]# /u01/opt/sysbench/bin/sysbench --version sysbench 1.1.0 CPU测试: [root@127-0-0-1 sysbench]# /u01/opt/sysbench/bin/sysbench cpu --cpu-max-prime=10000 run sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Prime numbers limit: 10000 Initializing worker threads... Threads started! CPU speed: events per second: 658.31 Throughput: events/s (eps): 658.3125 time

mysql备份与还原

[亡魂溺海] 提交于 2020-01-07 19:25:06
mysql备份与还原 一、备份常用操作基本命令 1、备份命令mysqldump格式 格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 –database 数据库名 > 文件名.sql 2、备份MySQL数据库为带删除表的格式 备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。 mysqldump --add-drop-table -uusername -ppassword -database databasename > backupfile.sql 3、直接将MySQL数据库压缩备份 mysqldump -hhostname -uusername -ppassword -database databasename | gzip > backupfile.sql.gz 4、备份MySQL数据库某个(些)表 mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql 5、同时备份多个MySQL数据库 mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2

mysql备份恢复与xtrabackup备份

笑着哭i 提交于 2020-01-07 18:43:35
mysqldump优缺点 优点 使用场景: 10G以下的数据库操作简单 缺点 数据量范围:30G --> TB级别 的时候备份、恢复操作很慢,效率低 xtrabackup备份软件 使用场景: 1、数据量大,变换量小 2、数据量小,变化量大 介绍 percona公司官网 https://www.percona.com/ Xtrabackup是由percona开源的免费数据库热备份软件,它能对InnoDB数据库和XtraDB存储引擎的数据库非阻塞地备份(对于MyISAM的备份同样需要加表锁);mysqldump备份方式是采用的逻辑备份,其最大的缺陷是备份和恢复速度较慢,如果数据库大于50G,mysqldump备份就不太适合。 Xtrabackup安装完成后有4个可执行文件,其中2个比较重要的备份工具是innobackupex、xtrabackup 1)xtrabackup 是专门用来备份InnoDB表的,和mysql server没有交互; 2)innobackupex 是一个封装xtrabackup的Perl脚本,支持同时备份innodb和myisam,但在对myisam备份时需要加一个全局的读锁。 3)xbcrypt 加密解密备份工具 4)xbstream 流传打包传输工具,类似tar 5)物理备份工具,在同级数据量基础上,都要比逻辑备份性能好的多,特别是在数据量较大的时候

一次SQL查询优化原理分析(900W+数据,从17s到300ms)

a 夏天 提交于 2020-01-07 17:58:11
一次SQL查询优化原理分析(900W+数据,从17s到300ms) Muscleape 关注 132019.12.09 00:48:52字数 1,163阅读 2,730 有一张财务流水表,未分库分表,目前的数据量为9555695,分页查询使用到了limit,优化之前的查询耗时16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms),按照下文的方式调整SQL后,耗时347 ms (execution: 163 ms, fetching: 184 ms); 操作:查询条件放到子查询中,子查询只查主键ID,然后使用子查询中确定的主键关联查询其他的属性字段; 原理:减少回表操作; -- 优化前SQL SELECT 各种字段 FROM `table_name` WHERE 各种条件 LIMIT 0,10; -- 优化后SQL SELECT 各种字段 FROM `table_name` main_tale RIGHT JOIN ( SELECT 子查询只查主键 FROM `table_name` WHERE 各种条件 LIMIT 0,10; ) temp_table ON temp_table.主键 = main_table.主键 找到的原理分析:MySQL 用 limit 为什么会影响性能? 一,前言 首先说明一下MySQL的版本: