设为首页 收藏本站
查看: 1868|回复: 0

[经验分享] Percona Server 的安装及tokudb引擎的安装笔记

[复制链接]

尚未签到

发表于 2018-10-20 09:02:06 | 显示全部楼层 |阅读模式
  Percona Server 的安装及tokudb引擎的安装笔记
  2017年7月7日
  安装percona server:
  yum localinstall Percona-Server-client-57-5.7.18-15.1.el6.x86_64.rpm  Percona-Server-shared-57-5.7.18-15.1.el6.x86_64.rpm Percona-Server-server-57-5.7.18-15.1.el6.x86_64.rpm  Percona-Server-tokudb-57-5.7.18-15.1.el6.x86_64.rpm
  安装过程中,会自动安装jmelloc组件。
  /etc/my.cnf 内容如下:
  [client]
  port    = 3306
  socket   = /tmp/mysql.sock
  [mysqld]
  port    = 3306
  socket   = /tmp/mysql.sock
  datadir  = /var/lib/mysql
  innodb_file_per_table=ON
  character-set-server = utf8
  server_id=1000
  join_buffer_size = 256K
  thread_stack = 256K
  default_storage_engine = InnoDB
  max_connections = 2000
  #slave-skip-errors  = 1032,1062
  #性能相关调节
  #跳过外部锁定,用于多进程条件下为MyISAM数据表进行锁定
  skip-external-locking
  sort_buffer_size = 4M
  read_buffer_size = 4M
  read_rnd_buffer_size = 4M
  myisam_sort_buffer_size = 64M
  #自适应哈希索引,在高并发复杂sql场景下有可能引发系统资源不足,大量spin waits ,lock waits 锁等待,导致崩溃
  skip-innodb_adaptive_hash_index
  #为所有线程打开表的数量
  table_open_cache = 2048
  #索引块的缓冲区大小
  key_buffer_size = 128M
  #MySQL查询结果缓冲区的大小
  query_cache_type = OFF
  query_cache_size = 0
  #处理大的信息包量
  max_allowed_packet = 16M
  #1G=>8 2G=>16 3G=>32 >3G=>64
  #缓存可重用的线程数
  thread_cache_size = 64
  event_scheduler = 1
  long_query_time = 1
  slow_query_log=1
  slow_query_log_file = /var/lib/mysql/log-slow-queries.log
  log-error   = /var/lib/mysql/error.log
  max_binlog_size = 256m
  transaction_isolation = READ-COMMITTED
  #innodb_io_capacity=1000
  master_info_repository = TABLE
  relay_log_info_repository = TABLE
  relay_log_recovery = 1 #crash safe
  log-bin=mysql-bin
  binlog_format=row
  sync_binlog =1
  log-slave-updates
  log_bin_trust_function_creators = 1
  binlog_rows_query_log_events=ON
  expire_logs_days = 5
  auto_increment_increment=1
  auto_increment_offset=1
  skip-slave-start
  skip-name-resolve
  binlog_cache_size = 16M
  binlog_stmt_cache_size=16M
  ########innodb settings########
  innodb_buffer_pool_instances = 4  #小于逻辑CPU个数,尽可能调大一点
  innodb_log_buffer_size = 16777216
  innodb_read_io_threads = 4 #小于逻辑CPU个数/2,尽可能调大一点
  innodb_write_io_threads=4 #  set password=PASSWORD('Abcd@1234');
  > flush privileges;
  > exit
  然后,开始安装tokudb引擎:
  官方详细的安装步骤: https://www.percona.com/doc/percona-server/5.7/tokudb/tokudb_installation.html
  1 禁用Transparent huge pages
  cat /sys/kernel/mm/transparent_hugepage/enabled
  [always] madvise never
  always代表已启用
  echo never > /sys/kernel/mm/transparent_hugepage/enabled
  echo never > /sys/kernel/mm/transparent_hugepage/defrag
  # 将设置写入到文件,防止重启配置丢失
  echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local
  echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.local
  2、安装并启用tokudb引擎:
  ## 可以使用INSTALL PLUGIN方法安装,也可以使用ps_tokudb_admin这个工具进行配置(推荐使用ps_tokudb_admin)
  执行 ps_tokudb_admin -uroot -pAbcd@1234 --enable
  会自动在 /etc/my.cnf 在加入下面的1行配置
  [mysqld_safe]
  thp-setting=never
  然后再执行 ps_tokudb_admin -uroot -pAbcd@1234 --enable-backup
  会自动在 /etc/my.cnf 在加入下面的1行配置
  [mysqld_safe]
  preload-hotbackup
  这样就完成了TokuDB engine plugin和TokuBackup plugin插件的安装。
  重启mysqld进程。
  /etc/init.d/mysql restart
  mysql -uroot -pAbcd@1234
  > show engines;
  > show plugins;
  > SELECT @@tokudb_version;
  都可以看到tokudb启用了。
  这样的话,我们重启了mysqld或者整个服务器的话,tokudb引擎也能在mysql重启时候再次自动加载。
  安装好tokudb引擎后,我们还可以自定义tokudb的参数在/etc/my.cnf里面。例如下面的2行:
  ### tokudb settings ########
  tokudb_cache_size = 5G   # 这个参数根据自己服务中可能使用到tokudb引擎的表数量来设置
  tokudb_row_format=tokudb_zlib   # 设置默认tokudb行格式,有tokudb_zlib 和 tokudb_lzma
  此外,还有些tokudb特有的配置参数,可以补充到/etc/my.cnf 里面,例如下面的部分配置:
  #TokuDB的行模式,建议用 FAST ,如果磁盘空间很紧张,建议用 SMALL
  #tokudb_default: 设置默认的压缩行为。在 TokuDB 7.1.0版本,默认使用zlib 库进行压缩,未来版本可能会改变。
  #tokudb_fast: 使用quicklz 库的压缩模式。
  #tokudb_small: 使用 lzma 库的压缩模式。
  #tokudb_zlib: 使用 zlib 库的压缩模式,提供了中等级别的压缩比和中等级别的CPU消耗。
  #tokudb_quicklz: 使用 quicklz 库的压缩模式, 提供了轻量级的压缩比和较低基本的CPU消耗。
  #tokudb_lzma: 使用lzma库压缩模式,提供了高压缩比和高CPU消耗。
  #tokudb_uncompressed: 不使用压缩模式。
  #tokudb_row_format = tokudb_small
  tokudb_row_format = tokudb_fast
  tokudb_cache_size = 1G ###建议内存的一半
  tokudb_commit_sync = 0
  tokudb_directio = 1
  tokudb_read_block_size = 128K
  tokudb_read_buf_size = 128K
  optimizer_switch = 'mrr=on,mrr_cost_based=off'
  tokudb-data-dir = /mydata/3306/tokudbData
  tokudb-log-dir = /mydata/3306/tokudbLog


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-623888-1-1.html 上篇帖子: SQL 批量修改订单号 下篇帖子: MaxScale binlog server的搭建
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表