Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2013402
  • 博文数量: 148
  • 博客积分: 7697
  • 博客等级: 少将
  • 技术积分: 3071
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-10 23:04
个人简介

MiBDP,数据开发、项目团队、数据应用和产品在路上,金融保险、互联网网游、电商、新零售行业、大数据和AI在路上。对数仓、模型、ETL、数据产品应用了解。DTCC 2013演讲嘉宾,曾做过两款大获好评的数据产品平台。知识星球ID:35863277

文章分类
文章存档

2020年(1)

2019年(2)

2017年(2)

2016年(5)

2015年(1)

2014年(1)

2013年(6)

2012年(5)

2011年(24)

2010年(28)

2009年(1)

2008年(6)

2007年(30)

2006年(36)

分类: Mysql/postgreSQL

2010-12-30 10:38:16

第一步:从mysql的官方取得分发版本

http://dev.mysql.com/downloads/ 

PS:这里可以直接下载源码分发版

第二步:建立mysql的用户组及用户

Groupadd mysql

Useradd -g mysql mysql

第三步:解压缩源文件

Tar xvfz /source_dir/mysql-version.tar.gz

第四步:配置configure文件(这里比较关键)

Cd mysql-version

首先查看下configure的配置内容

./configure --help

这里依据实际需要选择合适的配置

./configure --prefix=/usr/local/mysql --enable-assembler --enable-profiling --with-charset=utf8  --with-extra-charsets=latin1,gbk,gb2312 --with-zlib-dir=bundled --with-big-tables  --with-plugins=partition,daemon_example,myisam,federated,myisammrg

(PS--with-plugins的插件选择我们选择了partition这个是对表分区的支持mysql5.1后才支持 daemon_example这个是创建daemon例子的 myisam是针对传统的非事务性表的,因为我们的系统主要是用于数据仓库只有插入,删除和修改的操作很少。Federated是远程连接mysql的表,myisammrg是整合多表到一个表的)

第五步:编译二进制文件并对mysql进行初始化操作

Make

Make install

Cd /usr/local/mysql/

./bin/mysql_install_db

最后就是修改mysql程序和目录的权限及属主了

Chown -R mysql /usr/local/mysql

Chgrp -R mysql /usr/local/mysql

最后启动mysql服务:

/usr/loacl/mysql/bin/mysqld_safe &

如果想在系统启动时便启动mysql的话,需将/usr/local/mysql子目录的support-files下的mysql.server复制到/etc/init.d目录下

Cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

Chmod +x /etc/init.d/mysql

Chkconfig --add mysql



另:附上my.cnf设置

服务器:IBM System X

MEM info     :  6*2048 MB

Disk_totle   :  583.9GB

CPU model    :  8  Intel(R) Xeon(R) CPU           E5504  @ 2.00GHz

CPU_phy_num  :  2

CPU_core_num :  4

CPU_logic_num:  4

skip_locking

#避免MySQL的外部锁定,减少出错几率增强稳定性。

max_connections = 400

#指定MySQL允许的最大连接进程数。我们是分析系统同时连接的进程数比较少,这个是参照TD的最大登录数进行的扩展。

sort_buffer_size = 16M

#查询排序时所能使用的缓冲区大小。注意:该参数对应的分配内存是每连接独占,如果有100个连接,那么实际分配的总共排序缓冲区大小为100 × = 600MB。所以,对于内存在4GB左右的服务器推荐设置为6-8M

read_buffer_size = 16M

#读查询操作所能使用的缓冲区大小。和sort_buffer_size一样,该参数对应的分配内存也是每连接独享。

key_buffer_size = 512M

#key_buffer_size指定用于索引的缓冲区大小,增加它可得到更好的索引处理性能。对于内存在4GB左右的服务器该参数可设置为256M384M,不要大于内存的30%。注意:该参数值设置的过大反而会是服务器整体效率降低!

join_buffer_size = 128M

#联合查询操作所能使用的缓冲区大小,和sort_buffer_size一样,该参数对应的分配内存也是每连接独享。

query_buffer_size = 64M

#指定MySQL查询缓冲区的大小。可以通过在MySQL控制台观察,如果Qcache_lowmem_prunes的值非常大,则表明经常出现缓冲不够的情况;如果Qcache_hits的值非常大,则表明查询缓冲使用非常频繁,如果该值较小反而会影响效率,那么可以考虑不用查询缓冲;Qcache_free_blocks,如果该值非常大,则表明缓冲区中碎片很多。

tmp_table_size = 64M 

内部(内存中)临时表的最大大小 

如果一个表增长到比此值更大,将会自动转换为基于磁盘的表

此限制是针对单个表的,而不是总和

myisam_sort_buffer_size = 16M

table_cache = 256

所有线程所打开表的数量

增加此值就增加了mysqld所需要的文件描述符的数量


后期的mysql的操作详看mysql笔记:

http://blog.chinaunix.net/u/15472/showart_2403442.html

阅读(2602) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-01-03 14:38:57

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com