记一次mysql中的data文件操作经历 想拿到一个项目的最新的数据,做功能升级使用,备份一份数据同时也作为本地测试数据,文件有些大,我直接通过远程的phpmyadmin程序导出,不能愉快的玩耍,直接联系了IDC的同事帮忙导一份sql文件出来一下,结果那哥们没得直接扔给了我data文件,这让我如何是好,这个问题我没遇见过啊.处于面子问题,又不好意思再让他重新发我一份sql文件,只好硬着头皮尝试一下如何恢复成数据. 环境申明 以下操作都是针对windows下的操作 Data文件分析 *.frm是描…
数据库表设计时一对一关系存在的必要性 2017年07月24日 10:01:07 阅读数:694 在表设计过程中,我无意中觉得一对一关系觉得好没道理,直接放到一张表中不就可以了吗?真是说,网上信息什么都有,也可以说与我一样困惑的有好多人.感谢大神在网上的活跃,我知道了一对一关系存在的必要性. 1.首先就是这种关系出现的场景是什么样子,最好可以举个实际中的需求. 这样的场景有很多,比如:就拿最普通的用户信息来说,数据库中有一个表为user,一个表为user_auth.user表主要存放的字段为用户基…
Makefile中怎样调用python和perl文件为自己提供须要的数据,利用print函数对外输出数据 实例代码例如以下 perl.pl #!/usr/bin/perl print("hello, perl") python.py #!/usr/bin/env python print("hello, python") Makefile .PHONY:all PARAM1 := $(shell ./perl.pl) PARAM2 := $(shell ./pyth…
通过ROWID计算数据块的相关信息:  --详见: 数据文件头块保留大小.ROWID.数据文件最大大小等数据库限制的说明 根据small file tablespace的ROWID,计算出表空间.数据文件.BOOCK中行最大数如下: 根据ROWID的构成:          ---注:2^10这种写法代表2的10次方,等于1024. 每个表空间最大文件数:      2^10 1024 , 去掉全0和全1 通常1022个 ---本文下面的实验测试出是1023个 每数据文件最大数据块数量:file…
一.共享表空间与独立表空间MySQL5.5默认是共享表空间 ,5.6中,默认是独立表空间. 共享表空间:ibdata1是InnoDB的共享表空间,默认配置是把全部表空间存放到ibdata1中,因此而造成ibdata1文件无限增长需释放之说.优点:可以放表空间分成多个文件存放到各个磁盘上(表空间文件大小不受表大小的限制,如一个表可以分布在不同步的文件上).数据和文件放在一起方便管理.缺点:1. 大量删除操作后表空间中将会有大量的空隙,特别是对于统计分析,日值系统这类应用最不适合用共享表空间.2.…
Oracle 11g R2(11.2.0.1) RAC  数据文件路径错误解决--ORA-01157 ORA-01110: 数据文件 oracle 11g R2(11.2.0.4) rac--scan ipselect file_name,tablespace_name from dba_data_files;+DATA/bol/datafile/system.259.990861405 SYSTEM+DATA/bol/datafile/sysaux.260.990861407 SYSAUX+D…
今天找了个案例,琢磨了半天,才分析大概出来,数据库是.frm,.myd,myi备份,不会导入mysql,到网上找了些资料,导入成功. 首先说一下这几种文件是干什么的,*.frm是描述了表的结构,*.MYD保存了表的数据记录,*.MYI则是表的索引 把mysql数据库的*.frm,*.myd,*.myi,文件导到数据的方法 1.最简单就是,直接拷贝到数据库的的data下的数据库文件夹,前提是 mysql的版本一致,字体一致. 此方法简单快捷但不是没个人都能做到. .就是在本地机器安装mysql数据…
有时候我们需要将文件中的数据直接导入到数据库中,那么我们就可以使用load data infile,下面具体介绍使用方法. dao中的方法 @Autowired private JdbcTemplate jdbcTemplate; //从文本文件中快速读入表中 public boolean test(String filePath) throws Exception{ String sql = "LOAD DATA INFILE '"+filePath+"' REPLACE…
今天在使用Mysql的存储过程处理数据的批量删除时,遇到了WHERE条件中使用IN(strlist)时(strlist为逗号分隔的字符串),只有strlist的第一个元素才有效的问题,现在将问题和解决方法做下记录. 我们首先创建两张表userinfo(用户信息表)和userextinfo(用户扩展信息表),其中userextinfo表的UserID字段为外键对应userinfo表中的UserID字段 用户信息表userinfo 初始数据 用户扩展信息表userextinfo 初始数据 现在表中有…
Data Guard Standby Automatic Password file Synchronization in 12.2 (Doc ID 2307365.1) APPLIES TO: Oracle Database - Enterprise Edition - Version 12.2.0.1 and laterOracle Database Cloud Schema Service - Version N/A and laterOracle Database Exadata Clo…
在Windows Phone 中对隔离存储空间中的文件操作需要通过System.Io.IsolatedStorage下的类进行操作 获得指定文件夹下的所有文件: 参数:是指定文件夹的路径加上通配符,格式:\folder1\* List<string> GetFileNames(string _strFolder) { List<string> returnlst = new List<string>(); using (IsolatedStorageFile stora…
这俩天在开发另一个程序时,遇到一个小问题:如何调用程序下的Assets文件夹及其下的文件和文件夹: 在网上找了两天,基本上是关于如何调用手机中库的方法,没找到有关介绍如何调用查找 编译前添加图片或其它资源到手机程序中的文件: 后来在msdn.library找到了相关类和方法,现在来分享一下: 1. StorageFolder assFolder=null;//用来存放找到的Assets文件夹 List<StorageFolder> assetsSubFolderList = new List&…
保存下来以防以后遇到 今天还原mysql数据库时,看到那个data文件夹下好几个文件,还没有.sql文件,没有见过,总结下.Data文件夹里面包括:数据库名文件夹,文件夹里包括,*.frm,*.MYI,*.MYD,并且包含一个db.opt文件.分别介绍一下:    *.frm----描述了表的结构    *.MYI----表的索引    *.myd----保存了表的数据记录    db.opt----用文本编辑器打开,可以看到里面保存的是编码信息 要把上述的数据库导入进mysql: 安装mysq…
关于mysql 删除数据后物理空间未释放 OPTIMIZE TABLE 当您的库中删除了大量的数据后,您可能会发现数据文件尺寸并没有减小.这是因为删除操作后在数据文件中留下碎片所致.OPTIMIZE TABLE 是指对表进行优化.如果已经删除了表的一大部分数据,或者如果已经对含有可变长度行的表(含有 VARCHAR . BLOB 或 TEXT 列的表)进行了很多更改,就应该使用 OPTIMIZE TABLE 命令来进行表优化.这个命令可以将表中的空间碎片进行合并,并且可以消除由于删除或者更新造成…
1.使用navicat fro mysql数据库工具进行恢复 2.将原有备份的sql文件导入数据库 3.新建一个空数据库 4将备份数据库的数据表复制到新建数据库(只复制表格式) 5.在命令行模式中 use 到新表 6.解除表空间 alter table 表名 discard tablespace; 7.将元数据data文件下的 表名.ibd文件复制到新数据库的data文件中 8.重新导入表空间 alter table 表名 import tablespace; 9.刷新数据表,数据还原成功.…
http://www.jb51.net/article/47897.htm 由于yum安装mysql的时候,数据库的data目录默认是在/var/lib下,出于数据安全性的考虑需要把它挪到/data分区.步骤如下:一.关闭apache和mysql.复制代码 代码如下: service httpd stopservice mysqld stop 二.将/var/lib下的mysql目录mv(移动)到data目录.为什么要用mv命令,而不用cp命令呢?应为linux文件系统特殊性,mv命令能保留文件…
要想分析MySQL查询语句中的相关信息,如是全表查询还是部分查询,就要用到explain. 一.explain 用法:explain +查询语句. id:查询语句的序列号,上面图片中只有一个select 语句,所以只会显示一个序列号.如果有嵌套查询,如下 select_type:表示查询类型,有以下几种 simple: 简单的 select (没有使用 union或子查询) primary: 最外层的 select. union: 第二层,在select 之后使用了 union. depende…
很多手机游戏,在安装APK之后都得需要下载相应的资源包,然后才能进入游戏. 有这样一个需求:就是游戏中需要的资源包打在APK内,随apk一起进行安装到手机中. 这样就不需要,在安装APK之后,去下载资源.(这样APK的大小就会大一些) 于是在网上就开始找对应的直接访问随apk一起安装到手机中的资源.比如在assets目录下放置了一个“test.zip”的资源.当apk安装之后,可能我就需要访问这个"test.zip"资源文件.(可能我会去解压到某处) 在网上找了很长时间,说什么在ass…
#!/bin/bash #set -x oldIP=172.17.39.135 newIP=172.17.98.115 homefile=/usr/local/ims/ filelist=`grep $oldIP -rl $homefile` #查找homefile目录下含有oldIP的文件 echo $filelist for file in $filelist do sed -i 's/'$oldIP'/'$newIP'/g' $file #变量替换时需要用单引号或者双引号 done exi…
速度比insert要快20倍.共享一下java程序操作. package com.mysql.csv; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; public class Competition { static Connection conn = null; static String dr…
今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天(包括昨天和今天的数据) SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1 昨天(只包括昨天) SELECT * FROM 表名 WHERE DATEDIFF(字段,NOW())=-1; -- 同理,查询前天的就是-2 近7天 SELECT * FROM 表名 where DATE_SUB(CURD…
<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC     "-//Hibernate/Hibernate Mapping DTD 3.0//EN"    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping package="com.ibm.…
http://blog.csdn.net/lian_zhihui1984/article/details/6822201…
假如你是网站测试人员,数据库管理员从服务器上导出数据库,如下图: 你会发现这不是.sql文件,需要将其转化. 其实很简单,只要你本地比如D盘有安装“phpstudy”和“SQLyog”就可以,你可以直接将整个文件夹拷贝到D:\phpStudy\MySQL\data\目录下,记住所有上图文件要放到以数据库名称命名的文件夹下,例如我的数据库名是aaa,那么操作后如下图. 打开 SQLyog ,按F5会出现如下图 是不是很神奇,下面我们就可以直接右击该数据库导出为.sql文件了, 记住,如果是网站改版…
frm,myd,myi是属于MySQL存储数据的文件,phpMyAdmin是无法导入的. phpMyAdmin支持的文件格式为sql文件. 其实很简单: 1.找到你的mysql的安装目录下的data文件夹,新建一个文件夹,文件夹的名称是你想设计的库的名称,把这些文件(frm,myd,myi格式的文件)放到此文件夹中. 提示:也可以使用mysql管理工具创建一个数据库(例如:create database mydb;其中mydb是数据库名称),这时在data文件夹下会对应产生一个mydb的文件夹…
数据库误操作,把表的字段删除了,关键是被删除的字段的数据很重要,现在想要恢复数据,下面说说是怎么操作的. 数据库只剩.frm和.ibd文件了,按照网上的做法分如下两步来进行:一.找回表结构,二.找回数据.关键是我在第一步就碰到了问题,进行不下去,网上第一步的描述如下: a.先创建一个数据库,这个数据库必须是没有表和任何操作的. b.创建一个表结构,和要恢复的表名是一样的.表里的字段无所谓.一定要是innodb引擎的.CREATE TABLE `test`(  `testID` bigint(20…
MySQL的数据文件存储 MyISAM引擎分为:静态.动态和压缩MyISAM三种: 静态MyISAM:如果数据表中的各数据列的长度都是预先固定好的,服务器将自动选择这种表类型.因为数据表中每一条记录所占用的空间都是一样的,所以这种表存取和更新的效率非常高.当数据受损时,恢复工作也比较容易做. 动态MyISAM:如果数据表中出现varchar.xxxtext或xxxBLOB字段时,服务器将自动选择这种表类型.相对于静态MyISAM,这种表存储空间比较小,但由于每条记录的长度不一,所以多次修改数据后…
本文适用于,mysql无法启动,但数据文件未丢失的情况. Mysql因意外情况,导致无法启动,数据库未做备份的情况下,如何将数据迁移至其他数据库中. 原数据库地址:192.168.1.100(以下简称A服务器) 新数据库地址:192.168.2.100(以下简称B服务器) 数据恢复流程: 进入A服务器,输入命令 cat /etc/my.cnf (如文件不在当前位置,可使用find / -name my.cnf  命令查询文件位置) 找到datadir 路径 通过cd /www/server/da…
数据文件 在MySQL中每一个数据库都会在定义好(或者默认)的数据目录下存在一个以数据库名字命名的文件夹,用来存放该数据库中各种表数据文件. 不同的MySQL存储引擎有各自不同的数据文件,存放位置也有区别. 多数存储引擎的数据文件都存放在和MyISAM数据文件位置相同的目录下,但是每个数据文件的扩展名却各不一样.如MyISAM用".MYD"作为扩展名,Innodb用".ibd",Archive用".arc",CSV用".csv"…
一 数据文件 在 MySQL中每一个数据库都会在定义好(或者默认)的数据目录下存在一个以数据库名字命名的文件夹,用来存放该数据库中各种表数据文件.不同的 MySQL存储引擎有各自不同的数据文件,存放位置也有区别.多数存储引擎的数据文件都存放在和 MyISAM数据文件位置相同的目录下,但是每个数据文件的扩展名却各不一样.如 MyISAM用“.MYD”作为扩展名, Innodb用“ .ibd”, Archive用“ .arc”, CSV用“ .csv”,等等. InnoDB,是MySQL的数据库引擎…