mysql数据库

zabbix ubuntu 部署

五迷三道 提交于 2020-03-09 20:02:54
安装环境: ubuntu 18.0.4 安装 Server/proxy/前端 安装 Zabbix server 并使用 MySQL 数据库: apt install zabbix-server-mysql 安装 Zabbix proxy 并使用 MySQL 数据库: apt install zabbix-proxy-mysql 安装 Zabbix 前端: apt install zabbix-frontend-php mysql新建zabbix用户 mysql -u root create database zabbix character set utf8 collate utf8_bin; grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; quit; 导入数据 使用 MySQL 来导入 Zabbix server 的初始数据库 schema 和数据, zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix 上面会有几分钟,不要终止!不要终止!不要终止, 如果执行一半出错,可以把mysql中zabbix数据库所有表全部删掉,或者直接删掉zabbix数据库重新建一个

macos mysql通过.ibd文件恢复数据

天大地大妈咪最大 提交于 2020-03-09 19:11:23
拿到备份的文件如下: 这里frm文件由于数据表结构是已知的,所以没有用。 ibd文件为存储的数据文件 1:本地新建一个新的数据库 : 终端进入: cd /usr/local/mysql/data/ 如果报没有权限则运行: sudo chmod -R a+rwx /usr/local/mysql/data/ 进入到data/test下 在新建的数据库中运行建表语句: 需要在建表语句后加上: ROW_FORMAT=COMPACT 执行: ALTER TABLE xxxx DISCARD TABLESPACE; 解除表空间,ls查看会发现.idb文件已经被删除 在终端执行 open .命令打开访达 把需要的.ibd复制到test目录下 ls -l目录查看会发现 复制进去的.ibd文件不属于mysql 需要执行命令: sudo chown mysql:mysql xxx.ibd ls -l 执行后看到.ibd文件属于mysql则成功 最后执行命令: alter table xxx import tablespace; 恢复数据成功。 ps:如果操作不成功,需要停掉mysql服务,删除相关的日志和数据库,命令如下: rm -rf /usr/local/mysql/data/ib_logfile0 rm -rf /usr/local/mysql/data/ib_logfile1 rm -rf

MySQL事务实现原理

↘锁芯ラ 提交于 2020-03-09 17:32:51
1. 开篇 相信大家都用过事务以及了解他的特点,如原子性(Atomicity),一致性(Consistency),隔离型(Isolation)以及持久性(Durability)等。今天想跟大家一起研究下事务内部到底是怎么实现的,在讲解前我想先抛出个问题: 事务想要做到什么效果? 按我理解,无非是要做到可靠性以及并发处理。 可靠性:数据库要保证当insert或update操作时抛异常或者数据库crash的时候需要保障数据的操作前后的一致,想要做到这个,我需要知道我修改之前和修改之后的状态,所以就有了undo log和redo log。 并发处理:也就是说当多个并发请求过来,并且其中有一个请求是对数据修改操作的时候会有影响,为了避免读到脏数据,所以需要对事务之间的读写进行隔离,至于隔离到啥程度得看业务系统的场景了,实现这个就得用MySQL 的隔离级别。 下面我首先讲实现事务功能的三个技术,分别是日志文件(redo log 和 undo log),锁技术以及MVCC,然后再讲事务的实现原理,包括原子性是怎么实现的,隔离型是怎么实现的等等。最后在做一个总结,希望大家能够耐心看完 redo log与undo log介绍 mysql锁技术以及MVCC基础 事务的实现原理 总结 2. redo log与undo log介绍 2.1 redo log 2.1.1 什么是redo log redo

Mysql索引基本原理

点点圈 提交于 2020-03-09 17:19:53
数据库使用过程当中索引的时候必不可少,合理创建索引可以极大地提升数据查询效率,但是如何索引创建不当也会影响我们的查询效率,如果想使用好索引我们就要来关注一下索引的原理。本文主要讲的mysql索引,且以InnoDB引擎为主,顺带与MyISAM引擎做对比。 1.Mysql表空间、段、区、页 在讲索引的概念之前我们先说一下mysql中段区页的概念。 表空间是Mysql数据库存储的最高层,默认情况下InnoDB引擎只有一个表空间,所有的数据都是存放在这个表空间内。 在表空间下数据是以段区页的形式进行存储的。一张Mysql表存储在数据库当中不是以行为单位存储数据读取的,mysql数据库读取的最小单位是页。 段:一个段是由多个区构成的, 常见的段有数据段、索引段、回滚段等,在InnoDB存储引擎中,对段的管理都是由引擎自身所完成的。 区:一个区是由多个 连续的页组成的空间 ,无论页的大小怎么变动,一个区的默认大小是1M,默认情况下一个区包含64个连续的页,为保证区中的页是连续的 InnoDB会一次从磁盘中申请4~5个区。 页:页也叫做块,默认情况下一个页大小为16K(可以通过 innodb_page_size 参数来设置一个页的大小), 常见的页类型有:数据页,索引页, undo页 ,系统页,事务数据页等。 每页存储最多的行记录也是有硬性规定的最多16KB/2-200,即7992行 。

MYSQL数据库如何赋予远程某个IP访问权限

最后都变了- 提交于 2020-03-09 15:14:40
1. 授权用户root使用密码jb51从任意主机连接到mysql服务器: 代码如下: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'jb51' WITH GRANT OPTION; flush privileges; 2.授权用户root使用密码jb51从指定ip为218.12.50.60的主机连接到mysql服务器: 代码如下: GRANT ALL PRIVILEGES ON *.* TO 'root'@'218.12.50.60' IDENTIFIED BY 'jb51' WITH GRANT OPTION; flush privileges; 来源: https://www.cnblogs.com/youjianjiangnan/p/12448249.html

关于mysql数据库utf-8问题

久未见 提交于 2020-03-09 12:28:58
1.bug的出现   我们正常使用utf-8类型来给我们的字段的字符编码,对于正常的都没有问题,例如姓名呀,性别年龄等,但是会遇到一个问题就是如果存储表情emoji则无法存入utf-8编码的字段 2.mysql遗留问题   通过不断的查阅,我发现mysql的utf-8并不是真正意义的utf-8,而utf8mb4才是真正意义上的utf8.。故我们以后使用mysql的时候还是使用utf8mb4的编码比较恰当。 来源: CSDN 作者: 苦逼的大倪 链接: https://blog.csdn.net/qq_40851232/article/details/104745545

安装了phpstudy后navicat无法连接数据库

送分小仙女□ 提交于 2020-03-09 12:14:02
问题描述 最近开始了网络教学,由于某门课需要提前安装 phpstudy ,于是安装完成并测试 php 环境成功后,关闭 phpstudy ,打开 navicat 连接数据库时,发现连接失败。 关闭 phpstudy 时保留 MySQL 服务 打开 navicat 报错如下: (X)1045-Access denied for user’root@localhost(using password:YES) 问题分析 看起来是密码错误,我们可以打开 cmd 验证一下是不是真的是密码错误。我们使用 mysql -uroot -p 命令,接下来输入密码进行数据库连接,发现果真是密码错误。可是我明明记得我就是这个密码呀!一头雾水.jpg 经过一番思考后想起来我们关闭 phpstudy 时选择了保留 MySQL 服务,难道是保留的这个 MySQL 服务不是我原来本机安装的 MySQL ? 我们看到 C:\phpstudy_pro\Extensions 路径下有一个 MySQL5.7.26 ,也就是说 phpstydy 使用的 MySQL 是这个 MySQL5.7.26 ,而我们在退出 phpstudy 时也保留了这个 MySQL5.7.26 服务,那么输入我们本地安装 MySQL 的密码当然就会密码错误啦。 问题解决 经过如上的分析,我们只要停掉 phpstudy 的 MySQL5.7.26

只要坚持尝试,失败也会帮你(第十三周)

五迷三道 提交于 2020-03-09 11:30:13
一、 简述DNS服务器原理。 DNS是什么? DNS服务器所提供的服务是完成将主机名和域名转换为IP地址的工作。 为什么需要将主机名和域名转换为IP地址的工作呢?这是因为,当网络上的一台客户机访问某一服务器上的资源时,用户在浏览器地址栏中输入的是便于识记的主机名和域名。而网络上的计算机之间实现连接却是通过每台计算机在网络中拥有的惟一的IP地址来完成的,这样就需要在用户容易记忆的地址和计算机能够识别的地址之间有一个解析,DNS服务器便充当了地址解析的重要角色,相当一个记录的本子,其中记录所有的服务器主机名称和ip的对应关系。 DNS解析过程怎么样? 第一步,客户端向本地DNS服务器发送解析请求; 第二步,本地DNS如有相应记录会直接返回结果给客户端,如没有就向DNS根服务器发送请求; 第三步,DSN根服务器接收到请求,返回给本地服务器一个所查询域的主域名服务器的地址; 第四步,本地dns服务器再向返回的主域名服务器地址发送查询请求; 第五步,主域名服务器如有记录就返回结果,没有的话返回相关的下级域名服务器地址; 第六步,本地DNS服务器继续向接收到的地址进行查询请求; 第七步,下级域名服务器有相应记录,返回结果 第八步,本地dns服务器将收到的返回地址发给客户端,同时写入自己的缓存,以便下次查询; 因此,DNS域名查询实际上就是个不断递归查询的过程,直到查找到相应结果,需要注意的时

MySQL事务的实现原理

扶醉桌前 提交于 2020-03-09 08:47:27
天天用事务,但是你知道MySQL事务的实现原理吗? 1. 开篇 相信大家都用过事务以及了解他的特点,如原子性(Atomicity),一致性(Consistency),隔离型(Isolation)以及持久性(Durability)等。今天想跟大家一起研究下事务内部到底是怎么实现的,在讲解前我想先抛出个问题: 事务想要做到什么效果? 按我理解,无非是要做到可靠性以及并发处理。 可靠性:数据库要保证当insert或update操作时抛异常或者数据库crash的时候需要保障数据的操作前后的一致,想要做到这个,我需要知道我修改之前和修改之后的状态,所以就有了undo log和redo log。 并发处理:也就是说当多个并发请求过来,并且其中有一个请求是对数据修改操作的时候会有影响,为了避免读到脏数据,所以需要对事务之间的读写进行隔离,至于隔离到啥程度得看业务系统的场景了,实现这个就得用MySQL 的隔离级别。 下面我首先讲实现事务功能的三个技术,分别是日志文件(redo log 和 undo log),锁技术以及MVCC,然后再讲事务的实现原理,包括原子性是怎么实现的,隔离型是怎么实现的等等。最后在做一个总结,希望大家能够耐心看完 redo log与undo log介绍 mysql锁技术以及MVCC基础 事务的实现原理 总结 2 redo log 与 undo log介绍 1. redo

CentOS7 用Docker快速安装MySQL5.7

拟墨画扇 提交于 2020-03-09 08:30:59
安装Docker docker安装步骤参考: CentOS7 用Docker快速安装Oracle 11g 基本的运行 # 拉取 5.7 版本镜像 docker pull mysql:5.7 # 运行容器 --restart=always 是开机自启,不需要可以去掉 docker run --restart = always --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD = 123456 -d mysql:5.7 就是这么简单,一个基本的mysql数据库就已经运行起来了。 用DBeaver连接 这里我用的虚拟机,用 ip addr 查看一下地址。 按照提示,安装一下驱动,就能连接成功了。 来源: CSDN 作者: 毛珑珑 链接: https://blog.csdn.net/weixin_43231262/article/details/104728161