分类目录归档:db

Mysqldump参数大全(参数来源于mysql5.5.19源码)

参数 参数说明 --all-databases  , -A 导出全部数据库。 m … 继续阅读

发表在 db | Mysqldump参数大全(参数来源于mysql5.5.19源码)已关闭评论

MySQL Group Replication(MGR) 动态添加成员节点

相关信息 MGR单主模式搭建完成 原MGR节点 192.168.3.252:33 … 继续阅读

发表在 db | MySQL Group Replication(MGR) 动态添加成员节点已关闭评论

四大国产数据库

1:南大通用 公司简介 天津南大通用数据技术有限公司(以下简称南大通用)是专注于 … 继续阅读

发表在 db | 四大国产数据库已关闭评论

mysql initialize

1 初始化数据: /usr/local/mysql/bin/mysqld --i … 继续阅读

发表在 db | mysql initialize已关闭评论

innodb_flush_log_at_trx_commit和sync_binlog参数

innodb_flush_log_at_trx_commit和sync_binl … 继续阅读

发表在 db | innodb_flush_log_at_trx_commit和sync_binlog参数已关闭评论

mysql主从一致性校验工具-pt

一、环境 1、系统环境 系统 IP 主机名 说明 server_id cento … 继续阅读

发表在 db | mysql主从一致性校验工具-pt已关闭评论

mysql中的utf8mb4、utf8mb4_unicode_ci、utf8mb4_general_ci

1.utf8与utf8mb4(utf8 most bytes 4) MySQL … 继续阅读

发表在 db | mysql中的utf8mb4、utf8mb4_unicode_ci、utf8mb4_general_ci已关闭评论

SAS vs SSD对比测试MySQL 性能

对比测试结果见下: SSD设备相应的性能提升比例: 测试环境: 参考:  htt … 继续阅读

发表在 db | 标签为 | SAS vs SSD对比测试MySQL 性能已关闭评论

centos 6.x yum mysql 5.7

a.下载包 打开 https://dev.mysql.com/downloads … 继续阅读

发表在 db | 标签为 | centos 6.x yum mysql 5.7已关闭评论

MySQL 全文索引(fulltext index)

1.创建全文索引(FullText index) 旧版的MySQL的全文索引只能 … 继续阅读

发表在 db | 标签为 | MySQL 全文索引(fulltext index)已关闭评论

MySQL FullText

1.创建全文索引(FullText index) 旧版的MySQL的全文索引只能 … 继续阅读

发表在 db | 标签为 | MySQL FullText已关闭评论

大数据量存储见解

百万级的数据,无论侧重OLTP还是OLAP,当然就是MySql了。
过亿级的数据,侧重OLTP可以继续Mysql,侧重OLAP,就要分场景考虑了

实时计算场景:强调实时性,常用于实时性要求较高的地方,可以选择Storm;
批处理计算场景:强调批处理,常用于数据挖掘、分析,可以选择Hadoop;
实时查询场景:强调查询实时响应,常用于把DB里的数据转化索引文件,通过搜索引擎来查询,可以选择solr/elasticsearch;
企业级ODS/EDW/数据集市场景:强调基于关系性数据库的大数据实时分析,常用于业务数据集成,可以选择Greenplum;

数据库系统一般分为两种类型:
一种是面向前台应用的,应用比较简单,但是重吞吐和高并发的OLTP类型;
一种是重计算的,对大数据集进行统计分析的OLAP类型。

传统数据库侧重交易处理,即OLTP,关注的是多用户的同时的双向操作,在保障即时性的要求下,系统通过内存来处理数据的分配、读写等操作,存在IO瓶颈。
OLTP(On-Line Transaction Processing,联机事务处理)系统也称为生产系统,它是事件驱动的、面向应用的,比如电子商务网站的交易系统就是一个典型的OLTP系统。OLTP的基本特点是:
数据在系统中产生;
基于交易的处理系统(Transaction-Based);
每次交易牵涉的数据量很小;
对响应时间要求...

继续阅读

发表在 db | 大数据量存储见解已关闭评论

mysqldump

mysqldump 用来转储数据库或搜集数据库进行备份或将数据转存为文件
如在服务器上进行备份并且表均为MyISAM表,应考虑使用mysqlhotcopy,因为可以更快地进行备份和恢复。

1.mysqldump的几种常用方法:

(1)导出整个数据库(包括数据库中的数据)

    mysqldump -u username -p dbname > dbname.sql    

(2)导出数据库结构(不含数据)

    mysqldump -u username -p -d dbname > dbname.sql    

(3)导出数据库中的某张数据表(包含数据)

    mysqldump -u username -p dbname tablename > tablename.sql    

(4)导出数据库中的某张数据表的表结构(不含数据)

    mysqldump -u username -p -d dbname tablename > tablename.sql  
    
(5)转储几个数据库
 ... 继续阅读

发表在 db | 标签为 , | mysqldump已关闭评论

mysqldump error

mysqldump备份有时报错了,内容如下:

mysql@localhost mysql]$ mysqldump --single-transaction -A -uroot -proot123 --master-data=2 > /u01/backup/testbk.sql
Warning: Using a password on the command line interface can be insecure.
Error: Couldn't read status information for table slave_master_info ()
mysqldump: Couldn't execute 'show create table `slave_master_info`': Table 'mysql.slave_master_info' doesn't exist (1146)

错误提示有innodb_index_stats,innodb_table_stats,slave_master_info,slave_relay_log_info,slave_worker_info等几个
使用select语句进行查询时,也会提示这些表不存在

最终解决方法是:删除错误的表后重建

1.查询不可使用的表
show create table mysql.innodb_index_stats;
show create table mysql.innodb_table_stats;
show create table mysql.slave_master_info;
show create table mysql.slave_relay_log_info;
show create table mysql.slave_worker_info;

2.删除上述5张表或有错误的表
drop table mysql.innodb_index_stats;
drop table mysql.innodb_table_stats;
drop table mysql.slave_master_info;
drop table mysql.slave_relay_log_info;
drop table mysql.slave_worker_info;

3.进入data/mysql相应文件夹找到关于5张表的数据文件(.frm,.ibd)并删除
rm -rf innodb_index_stats.*
rm -rf innodb_table_stats.*
rm -rf slave_master_info.*
rm -rf slave_relay_log_info.*
rm -rf slave_worker_info.*

4. 查找表结构
去找$MYSQL_HOME/share/mysql_system_tables.sql,分别search到每一表的建表语句,然后重建设;

继续阅读

发表在 db | 标签为 , | mysqldump error已关闭评论

mysql innodb_table_stats does not exist

InnoDB: Error: table `mysql`.`innodb_table_stats` does not exist in the InnoDB internal

这个原因很明显 ,是mysql库的innodb_table_stats表损坏了。

再点击 mysql的innodb_index_stats 表,同样损坏。

 

解决方法:

损坏了,当然就是删除重补回来。

1,删除表,进入mysql库,把innodb前缀的表文件删除。

[root@AY140311174146476cc0Z mysql]# pwd
/usr/local/mysql/data/mysql
[root@AY140311174146476cc0Z mysql]# rm -f innodb_*

2,重新执行sql文件语句。当然语句来自安装包。

具体路径,如5.6为例:mysql-5.6.19/scripts/mysql_system_tables.sql

语句贴出来吧

CREATE TABLE IF NOT EXISTS innodb_index_stats (
    database_name           VARCHAR(64) NOT NULL,
    table_name          VARCHAR(64) NOT NULL,
    index_name          VARCHAR(64) NOT NULL,
    last_update         TIMESTAMP NOT NULL NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    /* there are at least:
    stat_name='size'
    stat_name='n_leaf_pages'
    stat_name='n_diff_pfx%' */
    stat_name           VARCHAR(64) NOT NULL,
    stat_value          BIGINT UNSIGNED NOT NULL,
    sample_size         BIGINT UNSIGNED,
    stat_description        VARCHAR(1024) NOT NULL,
    PRIMARY KEY (database_name, table_name, index_name, stat_name)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin STATS_PERSISTENT=0
 
 
 
CREATE TABLE IF NOT EXISTS innodb_table_stats (
    database_name           VARCHAR(64) NOT NULL,
    table_name          VARCHAR(64) NOT NULL,
    last_update         TIMESTAMP NOT NULL NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    n_rows              BIGINT UNSIGNED NOT NULL,
    clustered_index_size        BIGINT UNSIGNED NOT NULL,
    sum_of_other_index_sizes    BIGINT UNSIGNED NOT NULL,
    PRIMARY KEY (database_name, table_name)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin STATS_PERSISTENT=0

 

然后,再查询相关的innodb表。看下是否还有错误 。

这个错误到此解决了。

继续阅读

发表在 db | 标签为 | mysql innodb_table_stats does not exist已关闭评论