2017年4月26日工作日记
来源:互联网 发布:淘宝客服幽默催拍话术 编辑:程序博客网 时间:2024/05/21 06:18
用mysqldump来备份线上数据库
需求:备份全部表结构,备份部分表数据;
语句:bin/mysqldump -udbproxy -pdbproxy xlw>xlw.sql
复制xlw这个数据库到xlw.sql文件bin/mysql -udbproxy -pdbproxy test_xlw < xlw.sql
把xlw.sql文件还原到test_xlw数据库
以上是操作是颠覆式备份和复原,也就是说如果原来test_xlw数据库中的数据会被清空后,再导入xlw数据库。这是因为,生成的xlw.sql文件中,在导入xlw数据库的a表之前,默认DROP TABLE IF EXISTSa
; 可以通过–skip-add-drop-table取消drop语句bin/mysqldump -udbproxy -pdbproxy xlw --skip-add-drop-table a>xlw.sql
但是这个语句单纯的去掉了drop语句,在重建数据库时,如果a表已经存在,会报错导致失败。如果想增量的重建数据库,还要通过其他途径。bin/mysqldump -udbproxy -pdbproxy -d xlw >xlw.sql 只导出表结构,不导出数据。
bin/mysqldump -udbproxy -pdbproxy xlw a b c>xlwb.sql 把xlw数据库的a表,b表,c表导出数据到xlwb.sql
最后写了个脚本,定期备份。于是可以每次将备份数据放在指定文件夹中。
lastday=$(date -d last-day +%Y%m%d)mkdir $lastdayecho $lastdaypath="$PWD"echo $pathbin/mysqldump -udbproxy -pdbproxy -d xlw >$path/$lastday/xlw.sqlbin/mysqldump -udbproxy -pdbproxy xlw a b c>$path/$lastday/xlw1.sql
有关mysqldump的参考链接http://www.cnblogs.com/qq78292959/p/3637135.html
https://jingyan.baidu.com/article/948f5924259516d80ef5f95e.html
2.mybatis部分
mybatis可以分为以下几个部分
a. xxMapper.xml文件,用标记语言来表示sql,每个标签的id对应xxMapper.java文件中的函数名。理论上,此xml文件要加入到mybatis的conf文件中
<mappers> <!-- 注册orderMapper.xml文件, xxxMapper.xml位于me.gacl.mapping这个包下,所以resource写成me/gacl/mapping/xxxMapper.xml--> <mapper resource="me/gacl/mapping/xxxMapper.xml"/></mappers>
但是用了generator插件后,无需再conf文件中声明了。
b. dao层的XXMapper.Java,定义了一些对数据库的基本操作,比如增删改查。
c. pojo.entity层生成了XXEntity.java和XXEntityExample.java文件,XXEntity.java顾名思义是根据数据库的表结构创立的数据结构,包含了表的各个字段;mentor说XXEntityExample.java文件主要是和查询语句的where条件有关,比如order by,distinct等等。
综上,我的理解是,dao层的Mapper.java文件是最上层,收到由用户拼接的pojo层的两个文件后,传递给dao.mapper层的xml文件具体去数据库操作。
今天在操作时候遇到一个坑,要操作某个数据库,但是该数据库有一个字段叫做“public”,也就是说和java的保留字冲突,用jetty起程序的时候报错绑定失败。处理方式是在用来生成以上三个文件的xml文件中
<table schema="a" tableName="a" domainObjectName="aEntity" enableCountByExample="true" enableUpdateByExample="true" enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true"> <generatedKey column="id" sqlStatement="JDBC"/> <columnOverride column="public" property="ispublic" /> </table>
这样,将冲突的字段重命名,解决了问题。
- 2017年4月26日工作日记
- 2017年4月12日工作日记
- 2017年4月13日工作日记
- 2017年4月17日工作日记
- 2017年4月19日工作日记
- 2017年4月20日工作日记
- 2017年4月28日工作日记
- 2008年3月12日工作日记
- 2008年3月13日工作日记
- 2008年3月14日工作日记
- 2008年3月15日工作日记
- 2008年3月17日工作日记
- 2008年3月18~20日工作日记
- 13日工作日记
- 2010年1月26日工作日志
- 2015年8月26日工作日志---------------赵鑫
- 2017年6月11日工作日志
- 2011年4月10日工作小结
- NanoPi—M1(H3)———HAL程序编译、打包进安卓系统镜像以及so文件存放位置
- Codeforces 439C Devu and Partitioning of the Array 模拟
- 题目1458:汉诺塔III
- ngnix、lighttpd、apache三大主流web服务器的区别
- registerScriptHandler 与registerScriptTapHandler 比较
- 2017年4月26日工作日记
- iOS把url中含有的中文字符转化为UTF8编码方法
- XCode 8.3 工程的Tests模块,编译提示Apple Mach-O Linker (Id) Errors错误
- 部分常用API
- JDK从1.7.x升到1.8.x后Eclipse Maven打包及Tomcat服务启动问题处理
- 后台管理系统常用的Font Awesome图标及图标自定义方法
- 键盘事件:禁止后退和回车表单提交
- 题目1459:Prime ring problem
- 安装Redis