mysql数据库

MyBatis全局配置文件标签详解

蓝咒 提交于 2020-01-27 00:04:54
一、全局配置文件结构 configuration 配置   properties 属性:可以加载properties配置文件的信息   settings 设置:可以设置mybatis的全局属性   typeAliases 类型命名   typeHandlers 类型处理器   objectFactory 对象工厂   plugins 插件   environments 环境     environment 环境变量       transactionManager 事务管理器       dataSource 数据源   databaseIdProvider 数据库厂商标识   mappers 映射器    1、为全局配置文件绑定dtd约束:     1)联网会自动绑定     2)没网的时候【/org/apache/ibatis/builder/xml/mybatis-3-config.dtd】:解压mybatis 的jar包然后在eclipse中绑定         window——preperances——XML Catalog ——Add——设置key为http://mybatis.org/dtd/mybatis-3-config.dtd,绑定本地文件位置location:    2、 properties属性 1   <configuration> 2     <!--

启用CentOS6.5 64位安装时自带的MySQL数据库服务器

送分小仙女□ 提交于 2020-01-26 23:41:05
本人在虚拟机上又安装了一台linux机器,作为MySQL数据库服务器用,在安装时选择了系统自带的MySQL服务器端,以下是启用步骤。 首先开启mysqld服务 #service mysqld start 进入/usr/bin目录 #cd /usr/bin 设定mysql数据库root用户的密码 #mysqladmin -u root password '123456' 进入mysql数据库管理控制台 #./mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version: 5.0.67 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> grant all privileges on *.* to root@'%' identified by "root"; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)

MySQL数据库事务的特性

核能气质少年 提交于 2020-01-26 23:14:51
原子性 原子性:事务的不可分割,组成事务的各个逻辑单元不可分割。 一致性 一致性:事务执行的前后,数据完整性保持一致。 隔离性 隔离性:事务执行不应该受到其他事务的干扰。 持久性 持久性:事务一旦结束,数据就持久化到数据库中。 来源: CSDN 作者: 学亮编程手记 链接: https://blog.csdn.net/a772304419/article/details/104089087

关于MySQL的reset master和reset slave

久未见 提交于 2020-01-26 23:05:55
相关文章: https://blog.csdn.net/yabingshi_tech/article/details/50736735 说明: 实际上,只要复制关系中的数据库是同步的,那么binlog是不需要更改的。也就是reset master在一般状态下,是不需要执行的。反而在级联复制中,如果中间服务器执行了reset master后,中间服务器的binlog会被重置。后果是中间服务器以后的级联复制数据库都将需要重新设定复制开始点。这样,很难确认原来的POST位置对不对。 什么时候需要执行,或者必须执行? 1,有宕机! 有宕机意味着可能丢数据。那么在首选从库补全BINLOG以后,也很难说是没丢数据。这个时候,应该都执行一遍reset master和reset slave,开始另一个日志周期。 2,从库上意外被写入数据 从库意外被写入数据后,从库和主库肯定是不一致的,这个时候实际上从库是需要重建的。 来源: 51CTO 作者: AlrinNi 链接: https://blog.51cto.com/accole/2468438

MySQL数据库安装、卸载

偶尔善良 提交于 2020-01-26 22:24:24
系统:SUSE iZuf6hf3z0yo0v1py5grm4Z:~ # cat /etc/issue Welcome to SUSE Linux Enterprise Server 12 SP4 (x86_64) - Kernel \r (\l). 官网下载安装包: https://dev.mysql.com/downloads/mysql/ SUSE Linux Enterprise Server 12 (x86, 64-bit), RPM Bundle 解压: tar -xvf mysql-8.0.19-1.sles12.x86_64.rpm-bundle.tar -rw-r–r-- 1 7155 31415 35490133 Dec 10 20:59 mysql-community-client-8.0.19-1.sles12.x86_64.rpm -rw-r–r-- 1 7155 31415 472615 Dec 10 20:59 mysql-community-common-8.0.19-1.sles12.x86_64.rpm -rw-r–r-- 1 7155 31415 5329940 Dec 10 20:59 mysql-community-devel-8.0.19-1.sles12.x86_64.rpm -rw-r–r-- 1 7155 31415 3307108

MySQL备份策略与数据恢复简介

杀马特。学长 韩版系。学妹 提交于 2020-01-26 21:26:04
备份的重要性 数据备份是一个程序员,嗯,很重要的操守!想一想,哪天数据库所在的服务器挂了,数据库文件被毁了,哭都来不及啊,或者不小心删库了,更是mmp。 因此,作为一名优秀的程序员,要掌握一定的数据备份技能。它上可按需求转移数据到安全的地方,下可保证数据丢失后便于及时恢复。 备份概况 备份有很多种,按存储方式分为物理备份(备份具体数据)和逻辑备份(备份SQL语句,这个可以通过查看导出的SQL文件看到),按备份过程分为冷备(需要服务停机,这个时候MySQL实例是停止的,再进行数据导出)和热备(服务器不停机)。 冷备 我们一般玩游戏会出现停机维护的情况,一般凌晨3点到8点的样子,大概就是冷备吧,(虽说大多是系统升级,但不排除会这个时候进行数据备份是吧,哈哈)。 对于MySQL而言,可以有物理和逻辑两种: 物理备份 物理备份比较暴力,比如直接把整个MySQL服务所有文件copy一份到另一台机子上,也可以只将MySQL服务文件夹下的data文件copy一份到另一台服务器上,不过这样对MySQL版本有要求,最好一致。 逻辑备份 重要的是逻辑备份,其实就是将执行的具体SQL语句copy一份,哪天不小心删表了,再执行一下这个SQL文件就可以恢复数据了,棒棒的。 我们最常用的就是MySQL自带的工具mysqldump,命令如下: mysqldump - h 192.168 .153 .128 -

IDEA连接mysql又报错!Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' prope

老子叫甜甜 提交于 2020-01-26 18:29:52
错误界面 IDEA连接mysql,地址,用户名,密码,数据库名,全都配置好了,点测试连接,咔!不成功! 界面是这样的, 翻译过来就是:服务器返回无效时区。进入“高级”选项卡,手动设置“serverTimezone”属性。 看起来是时区出了问题。时区怎么会出问题?坑真多。网上搜了各种解决办法,琳琅满目,复杂的简单的,总算是解决了! 解决方案 我的问题出在两块,第一,设置mysql的时区。第二,mysql驱动的版本。详细步骤如下: 第一,设置mysql时区。 1,我们先来检查下mysql时区。 配置完环境变量,就可以在命令窗口直接执行下面的命令啦! 进入命令窗口(Win + R),连接数据库 mysql -hlocalhost -uroot -p,回车,输入密码,回车,如图: 2,继续输入 show variables like'%time_zone'; (注意不要漏掉后面的分号),回车,如图: 显示 SYSTEM 就是没有设置时区啦。 3,现在我们来设置时区。 输入set global time_zone = '+8:00'; 注意不要漏掉后面的分号),回车,如图: 这便是设置成功啦! 这时你重新连接下数据库,也许能连接成功!如果没有,就继续往下走! 第二,同步mysql驱动。 我本机安装的mysql版本是5.7的,那么IDEA要连接mysql也应该匹配下驱动版本

【MySQL】关于MySQL出现lock wait timeout exceeded 的解决方案

╄→尐↘猪︶ㄣ 提交于 2020-01-26 17:52:16
关于MySQL出现 lock wait timeout exceeded; try restarting transaction 的解决方案。 一、问题抛出 在做查询语句时,MySQL 抛出了这样的异常: MySQL server error report:Array ( [0] => Array ( [message] => MySQL Query Error ) [1] => Array ( [sql] => SELECT * FROM taobao_trade WHERE order_status = 1 and orderID ='2018061812306547' AND is_tran_success=0 for update ) [2] => Array ( [error] => Lock wait timeout exceeded; try restarting transaction ) [3] => Array ( [errno] => 1205 ) ) 即 Lock wait timeout exceeded; try restarting transaction 的异常,错误提示的意思,很明显,是因为这条语句被锁住了,所以释放这个锁。 二、解决方案 我们可以通过到 information_schema 中来进行查找被锁的语句。 解释: information

MySQL 索引总结

别等时光非礼了梦想. 提交于 2020-01-26 15:56:02
1、索引是做什么的? 想象一下,你面前有本词典,数据就是书的正文内容,你就是那个cpu,而索引,则是书的目录 索引用于快速找出在某个列中有一特定值的行。不使用索引,MySQL必须从第1条记录开始然后读完整个表直到找出相关的行。 表越大,花费的时间越多。如果表中查询的列有一个索引,MySQL能快速到达一个位置去搜寻到数据文件的中间,没有必要看所有数据。 大多数MySQL索引(PRIMARY KEY、UNIQUE、INDEX和FULLTEXT)在B树中存储。只是空间列类型的索引使用R-树,并且MEMORY表还支持hash索引。 2、索引越多越好? 大多数情况下索引能大幅度提高查询效率,但: 数据的变更(增删改)都需要维护索引,因此更多的索引意味着更多的维护成本 更多的索引意味着也需要更多的空间 (一本100页的书,却有50页目录?) 过小的表,建索引可能会更慢 (读个2页的宣传手册,你还先去找目录?) 3、索引的字段类型问题 text类型,也可建索引(需指定长度) myisam存储引擎索引键长度综合不能超过1000字节 用来筛选的值尽量保持和索引列同样的数据类型 尽量减少like,但不是绝对不可用,"xxxx%" 是可以用到索引的, 想象一下,你在看一本成语词典,目录是按成语拼音顺序建立,查询需求是,你想找以 "一"字开头的成语("一%"),和你想找包含一字的成语("%一%")

MySQL 常见的两种存储引擎

纵然是瞬间 提交于 2020-01-26 14:26:46
  MySQL两种常见的存储引擎有:MyISAM 和 InnoDB,两者区别如下: 1、count运算:MyISAM 有缓存表的 meta-data 元数据,元数据包括行数等,因此其做 COUNT(*) 查询时不需要消耗多少资源。而 InnoDB 就没有这个缓存。 2、事务和崩溃后的安全恢复:MyISAM强调的是性能,每次查询具备原子性,执行速度比 InnoDB 更快,但是 MyISAM 不提供事务的支持。而 InnoDB 支持事务、外部键等高级数据库功能。具有事务提交(commit)、回滚(rollback)和崩溃修复(crash recovery capabilities)的事务安全(transaction-safe (ACID compliant))型表。 3、支持外键:InnoDB支持,MyISAM 不支持。   MyISAM更适合读密集的表,而InnoDB更适合写密集的的表。 在数据库做主从分离的情况下,经常选择MyISAM作为主库的存储引擎。 一般来说,如果需要事务支持,并且有较高的并发读取频率(MyISAM的表锁的粒度太大,所以当该表写并发量较高时,要等待的查询就会很多了),InnoDB是不错的选择。如果你的数据量很大(MyISAM支持压缩特性可以减少磁盘的空间占用),而且不需要支持事务时,MyISAM是最好的选择。 来源: https://www.cnblogs