文章结束给大家来个程序员笑话:[M]

1、mysql的目录:在rpm或者yum安装时:/var/lib/mysql  在编译安装时默许目录:/usr/local/mysql

2、用rpm包安装的MySQL是不会安装/etc/my.cnf文件的,
至于为什么没有这个文件而MySQL却也能正常启动和作用,在点有两个说法,
第一种说法,my.cnf只是MySQL启动时的一个参数文件,可以没有它,这时MySQL会用内置的默许参数启动,
第二种说法,MySQL在启动时主动应用/usr/share/mysql目录下的my-medium.cnf文件,这种说法仅限于rpm包安装的MySQL,
解决方法,只需要复制一个/usr/share/mysql目录下的.cnf文件到/etc目录,并改名为my.cnf便可。

在/usr/share/mysql目录下有很多语言目录和mysql多个适用于不同类型项目的对应配置文件

3、配置mysql的字符集设置:

在配置文件中

在socket          = /var/lib/mysql/mysql.sock后添加default-character-set = utf8 (决议了客服端字符集和连接字符集)

在myisam_sort_buffer_size = 8M后添加character-set-server = utf8 (决议了服务器字符集和数据库[数据库,表,字段]字符集,由于继承关系),添加collaction-server=usf8_general_ci (这是设置校验字符集,作用于排序有关order by)

4、开启mysql的log-bin:

配置文件中开启 log-bin=mysql-bin (即是后面的内容可以随意写,mysql-bin只是说明log-bin的内容写入mysql-bin里面而已),重启mysql后,在/var/lib/mysql下能发现 mysql-bin.000001和mysql-bin.index,说明mysql-bin已开启

5、关于mysqlbin的一些命令

mysql提示符下查看bin-log日记
    show master status;
    #显示最后一个bin-log日记和它的最后一个位置
    show master logs;
    #查看全部的bin-log日记,同时标记最后一个pos位置

6、应用mysqlbinlog命令来查看binlog日记

如果提示字符集错误---mysqlbinlog: unknown variable 'default-character-set=utf8' ,可以mysqlbinlog --no-defaults /var/lib/mysql/mysql-bin.000001来疏忽字符集错误

7、什么时候会产生一个新bin-log日记
     1)重启mysql服务
     2)flush logs;
      #刷新bin-log日记,会产生一个新的bin-log日记 如:mysql-bin.00008
     3) reset master;
   #清空全部在bin-log日记,最后只剩下mysql-bin.00001 且位置为初始位置

    每日一道理
美丽是平凡的,平凡得让你感觉不到她的存在;美丽是平淡的,平淡得只剩下温馨的回忆;美丽又是平静的,平静得只有你费尽心思才能激起她的涟漪。

需求:公司内真正数据备份与恢复,9:30的时候备份数据,同时刷新bin-log日记,但是10:00数据损坏,如何去恢复9:30以来全部的数据?(在编译安装mysql环境下)

1.9:30备份数据:
      /usr/local/mysql/bin/mysqldump -uroot -p123 test -l -F >/tmp/test.sql
     -l 将表锁了(防止在导表的过程中,又有用户修改或者添加数据),只读  -F (flush) 刷新bin-log日记(产生新的日记文件,继承保存后面的日记记录)
   2.9:30-10:00数据都市写到bin-log
     /usr/loca/mysql/bin/mysqlbinlog --no-defaults mysql-bin.000003
    #只保存增、删、改的语句
  3.10:00数据损坏,如何恢复数据:
    1)恢复9:30备份的数据
        /usr/local/mysql/bin/mysql -uroot -p123 test </tmp/test.sql
    2)恢复9:30-10:00之间的bin-log日记中的增、删、改语句
       /usr/local/mysql/bin/mysqlbinlog --no-defaults --stop-position=367 mysql-bin.000003|/usr/local/mysql/bin/mysql -uroot -p123 test

--stop-position 为要恢复数据在logbin的最后日记,可以通过查看日记文件查找位置,还有--start-position表示恢复从该位置当前的数据
  4.这样,数据全部恢复完毕

8、主从数据库

从mysql服务器:
  1.vi /etc/my.cnf
  server-id = 2
  log-bin=mysql-bin
  master-host=192.168.255.1
  master-user=user1
  master-password=123
  master-port=3306
  2.重启mysql
  3.show slave status\G
  Slave_IO_Running: Yes
  #从主服务器复制bin-log成功
  Slave_SQL_Running: Yes
  #把复制过去的sql语句执行成功

4.出错
#原因,与主服务器的最后一个pos位置对接不成功
slave stop;
change master to
master_host="192.168.10.1",
master_user="user1",
master_password='123',
master_port=3306,
#在主服务器上show master status;
master_log_file="mysql-bin.000001",
master_log_pos= 279;
slave start;

文章结束给大家分享下程序员的一些笑话语录:

一条狗在街上闲逛,看见橱窗里一张告示:「招聘程序员。会编程,有团队精神,至少精通两种语言。均等机会。」
  那条狗就进去申请,但是被拒绝了。
  「我不能雇一条狗在公司里做事。」经理说。
  狗不服气,指着告示上「均等机会」几字抗议。
  经理没法,叹了口气,不屑地问道:「你会编程吗?」
  那条狗默默地走到电脑前,编了个程序,运作准确。
  「你有团队精神吗?」经理问。
  那条狗掉头看了看门外,一大群野狗在外面虎视耽耽。
  「我真的不能雇狗做这份工作。」经理气急败坏地说。
  「就算会编程、有团队精神,但是我需要的雇员至少要能精通两种语言。」
  那条狗抬头看着经理说:「喵-噢。」

---------------------------------
原创文章 By
数据和字符集
---------------------------------

数据字符集mysql主从数据库,分库分表等笔记的更多相关文章

  1. 【转】mysql分库分表,数据库分库分表思路

    原文:https://www.cnblogs.com/butterfly100/p/9034281.html 同类参考:[转]数据库的分库分表基本思想 数据库分库分表思路   一. 数据切分 关系型数 ...

  2. Mysql系列四:数据库分库分表基础理论

    一.数据处理分类 1. 海量数据处理,按照使用场景主要分为两种类型: 联机事务处理(OLTP) 面向交易的处理系统,其基本特征是原始数据可以立即传送到计算机中心进行处理,并在很短的时间内给出处理结果. ...

  3. php面试专题---mysql数据库分库分表

    php面试专题---mysql数据库分库分表 一.总结 一句话总结: 通过数据切分技术将一个大的MySQLServer切分成多个小的MySQLServer,既攻克了写入性能瓶颈问题,同一时候也再一次提 ...

  4. 转数据库分库分表(sharding)系列(二) 全局主键生成策略

    本文将主要介绍一些常见的全局主键生成策略,然后重点介绍flickr使用的一种非常优秀的全局主键生成方案.关于分库分表(sharding)的拆分策略和实施细则,请参考该系列的前一篇文章:数据库分库分表( ...

  5. 数据库分库分表(sharding)系列【转】

    原文地址:http://www.uml.org.cn/sjjm/201211212.asp数据库分库分表(sharding)系列 目录; (一) 拆分实施策略和示例演示 (二) 全局主键生成策略 (三 ...

  6. 数据库分库分表(sharding)系列(二) 全局主键生成策略

    本文将主要介绍一些常见的全局主键生成策略,然后重点介绍flickr使用的一种非常优秀的全局主键生成方案.关于分库分表(sharding)的拆分策略和实施细则,请参考该系列的前一篇文章:数据库分库分表( ...

  7. 数据库分库分表(sharding)系列

    数据库分库分表(sharding)系列     目录; (一) 拆分实施策略和示例演示 (二) 全局主键生成策略 (三) 关于使用框架还是自主开发以及sharding实现层面的考量 (四) 多数据源的 ...

  8. mycat+ mysql集群 分库分表

    mycat介绍Mycat数据库分库分表中间件国内最活跃的.性能最好的开源数据库中间件!Mycat关键特性关键特性支持SQL92标准支持MySQL.Oracle.DB2.SQL Server.Postg ...

  9. 阿里P8架构师谈:数据库分库分表、读写分离的原理实现,使用场景

    本文转载自:阿里P8架构师谈:数据库分库分表.读写分离的原理实现,使用场景 为什么要分库分表和读写分离? 类似淘宝网这样的网站,海量数据的存储和访问成为了系统设计的瓶颈问题,日益增长的业务数据,无疑对 ...

随机推荐

  1. MySql表中key的区别

    我们看到Key那一栏,可能会有4种值,即'啥也没有','PRI','UNI','MUL'1. 如果Key是空的, 那么该列值的可以重复, 表示该列没有索引, 或者是一个非唯一的复合索引的非前导列2. ...

  2. SharePoint 2010中列表Add和Delete事件解析

    转:http://winsystem.ctocio.com.cn/26/11400026_2.shtml [IT专家网独家撰稿]SharePoint 2010与以前的版本相比,天翻地覆的变化并不为过. ...

  3. 手势解锁自定义View

    package com.rxx.view; import java.util.ArrayList; import java.util.List; import java.util.Timer; imp ...

  4. <转>如何测试一个杯子

    在软件测试的面试中, 经常会碰到类似的问题. 比如:如何测试一个杯子, 或者如何测试一只笔. 要求你设计20个以上的test case. 这类的面试题目,是考察面试者是否熟悉各种软件测试方法, 设计t ...

  5. 一道JAVA经典面试题目的两种解法

    题目要求:String s="-1 2 5 78 129 -65 -23";将字符串进行升序排序后输出. 方法一:使用数组进行排序 思路: 1.获取字符串中的数值:   2.将数组 ...

  6. wuzhicms访问统计实现方法

    实现目标:程序实现了对整站页面pv的统计文件的位置:coreframe/app/content/pv.php代码预览: /** * 总站访问次数统计 */ defined('IN_WZ') or ex ...

  7. ACCESS TOKEN

    Access Token 在微信公众平台接口开发中,Access Token占据了一个很重要的地位,相当于进入各种接口的钥匙,拿到这个钥匙才有调用其他各种特殊接口的权限. access_token是公 ...

  8. codeforce 702D Road to Post Office 物理计算路程题

    http://codeforces.com/contest/702 题意:人到邮局去,距离d,汽车在出故障前能跑k,汽车1公里耗时a,人每公里耗时b,修理汽车时间t,问到达终点最短时间 思路:计算车和 ...

  9. Tkinter教程之Pack篇

    本文转载自:http://blog.csdn.net/jcodeer/article/details/1813077 '''Tkinter教程之Pack篇'''#Pack为一布局管理器,可将它视为一个 ...

  10. J2SE7规范_2013.2_类

    8.1 类的定义   包括普通类和枚举类,枚举(略) 下面都是指普通类:   public只能用于外部类,成员类,不能用于局部类,匿名类 protected和private用于成员类时(待解) sta ...