1. 解压源码到个人目录;
2. 执行如下命令进行configure,注意源码默认情况下不支持innodb,必须使用--with-plugins手工指定(二进制包默认已经支持):
./configure --prefix=$HOME/local/mysql-5154 --with-extra-charsets=latin1,gbk,utf8 --with-plugins=partition,heap,innobase,myisam,myisammrg,csv
3. 执行如下命令编译和安装
make
make install
4. 如果MySQL服务器运行的用户不是你的登录用户,则需要创建用户,并修改目录权限
4.1 增加用户组和用户
groupadd yourgroup
useradd -g yourgroup yourname
4.2 修改安装目录的权限
chown -R yourname yourdir
chgrp -R yourname yourdir
5. 制定配置文件,拷贝后面的配置样例,然后按照如下方式修改:
5.1 将其中所有目录相关的配置全部改为个人目录,且要用绝对路径,不能用$HOME.例如data, log(注意二进制包解压后缺省并没有log、tmp目录,需要自己手工创建),为了提高性能,建议数据目录和日志目录分开到不同的盘不同的目录,例如:
datadir = /home1/liyh/mysql/data/
log-error = /home/liyh/local/mysql/log/mysqld.err
log-bin=/home/liyh/local/mysql/log/mysql-bin
innodb_data_home_dir = /home1/liyh/mysql/data
5.2 修改[mysqld]下的port为你自己的端口;
5.3 修改[mysqld]下的user为你的用户名,即第4步创建的用户;
6. 按照如下方式进行初始化
进入安装目录下的bin目录,执行如下语句,其中--defaults-file是你在第5步配置的的配置文件,--user是你的用户名,--basedir是你的安装目录,即第2步命令中的--prefix参数指定的目录
./mysql_install_db--defaults-file=/home/liyh/local/mysql-5154/my.cnf --user=liyh --basedir=/home/liyh/local/mysql-5154
7. 按照如下方式启动
/home/liyh/local/mysql-5154/bin/mysqld_safe --defaults-file=/home/liyh/local/mysql-5154/my.cnf --basedir=/home/liyh/local/mysql-5154
&
【特别注意】为了提高InnoDB引擎的性能,记得一定要按照如下方式修改两个参数,否则你的MySQL insert和update慢得如蜗牛,但高性能同时也是有损失的,这样配置会降低MySQL的可靠性,某些场景下可能丢失数据,实际应用需要你自己评估是否要这样配置:
sync_binlog=0 1代表每次执行一条insert/update/delete都同步一下磁盘,0代表由操作系统决定何时同步磁盘,大于0代表达到多少条后再同步磁盘,如果可靠性要求较低,建议设置为0或者100以上,默认为0
innodb_flush_log_at_trx_commit = 2 默认为1,意思是每次事务提交时都同步日志到磁盘,0代表每秒同步一次,事务提交时不同步,2代表只将事务日志写入缓存,每秒由系统同步磁盘;
==================配置样例如下====================================
[client]
port = 19816
socket = /home/liyh/local/mysql/tmp/mysql.sock
default-character-set = utf8
[mysqld]
character-set-server = utf8
port = 19816
socket = /home/liyh/local/mysql/tmp/mysql.sock
user = liyh
skip-external-locking
datadir = /home1/liyh/mysql/data/
log-error = /home/liyh/local/mysql/log/mysqld.err
pid-file = /home/liyh/local/mysql/tmp/mysql.pid
#autocommit = off
#read-only
key_buffer_size = 64M
myisam_sort_buffer_size = 300M
max_allowed_packet = 16M
table_open_cache = 4096
sort_buffer_size = 5M
join_buffer_size = 5M
read_buffer_size = 5M
read_rnd_buffer_size = 8M
bulk_insert_buffer_size = 64M
query_cache_size = 8M
query_cache_limit=8M
query_cache_min_res_unit = 2k
tmp_table_size=64M
max_heap_table_size = 128M
open_files_limit=102400
thread_concurrency = 16
max_connections=3000
max_connect_errors=3000
back_log = 600
table_cache = 4096
thread_cache_size = 100
thread_stack = 192K
#transaction_isolation = READ-COMMITTED
skip-name-resolve
####log variables
server-id = 1
binlog_format=mixed
#log-slave-updates
log-bin=/home/liyh/local/mysql/log/mysql-bin
relay_log=/home/liyh/local/mysql/log/relay-bin
max_binlog_size = 500M
binlog_cache_size = 1M
max_binlog_cache_size = 64M
#binlog-ignore-db = mysql
replicate-ignore-db = mysql
expire-logs-days = 10
sync_binlog=100
slow_query_log=1
slow_query_log_file=/home/liyh/local/mysql/log/slowquery.log
long_query_time=1
general_log=off
general_log_file=/home/liyh/local/mysql/log/general.log
#relay_log_purge=OFF
# Point the following paths to different dedicated disks
#tmpdir = /tmp/
#log-update = /path-to-dedicated-directory/hostname
#auto_increment_increment=1
#auto_increment_offset=1
####innodb variables
#skip-innodb
innodb_data_home_dir = /home1/liyh/mysql/data
innodb_data_file_path = ibdata1:2000M;ibdata2:100M:autoextend
innodb_log_group_home_dir = /home1/liyh/mysql/data
#innodb_log_arch_dir = /home/liyh/local/mysql/data/
innodb_buffer_pool_size = 2048M
innodb_additional_mem_pool_size = 64M
innodb_log_file_size = 200M
innodb_log_buffer_size = 8M
innodb_log_files_in_group = 3
innodb_flush_log_at_trx_commit = 2
#innodb_file_io_threads = 4
innodb_thread_concurrency = 16
default-storage-engine=innodb
#innodb_max_dirty_pages_pct = 90
#innodb_lock_wait_timeout = 60
#innodb_file_per_table = 0
#interactive_timeout = 600
#wait_timeout = 900
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates
[myisamchk]
key_buffer_size = 512M
sort_buffer_size = 512M
read_buffer = 5M
write_buffer = 5M
[mysqlhotcopy]
interactive-timeout
分享到:
相关推荐
2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下...
[三思笔记]Linux环境下安装MySQL源码发布版5.1
2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下...
2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下...
ThinkPHP 5.1框架全开源商城小程序源码 带后台商城源码程序【带详细安装使用文档】 基于TP5.1开发的小程序源码带后台商城源码程序【带详细安装使用文档】 ThinkPHP 5.1框架全开源商城小程序源码,代替了手机端的...
UE5.1最新发布源代码
使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL ...
第一步:使用ftp工具中的二进制模式,将该软件包里的 upload 目录及其文件上传到您的空间,假设上传后目录为根目录。 第二步:先确认以下目录或文件属性为 (777) 可写模式。 app/model app/data 子目录继续可写 ...
仅供学习交流使用,不提供技术支持
NULL 博文链接:https://hlee.iteye.com/blog/546261
源码简介与安装说明: ThinkPHP 5.1框架全开源商城小程序源码,代替了手机端的APP电脑端的独立网站。无需下载,触手可及。 1.源码部署自己服务器,全部数据自己掌握; 2.持续更新升级; 3.支持后台修改小程序端...
推荐运行环境: PHP 5.5+ MySQL 5.1+ ...源码从2007年10月起开始编写,经由2009年改换内核, 由于历史久远,代码质量良莠不一,其核心部分,至今仍有研究价值(主从MYSQL数据库程序设计、分布式内存等)。
mysql-5.5.27 linux源码安装文件
源码简介与安装说明: ThinkPHP 5.1框架全开源商城小程序源码,代替了手机端的APP电脑端的独立网站。无需下载,触手可及。 1.源码部署自己服务器,全部数据自己掌握; 2.持续更新升级; 3.支持后台修改小程序端...
ThinkPHP 5.1框架全开源商城小程序源码,代替了手机端的APP电脑端的独立网站。无需下载,触手可及。 1.源码部署自己服务器,全部数据自己掌握; 2.持续更新升级; 3.支持后台修改小程序端同步生效; 4.带安装搭建教程...
ThinkPHP5.1的wms进销存源码,ThinkPHP5.1的wms进销存源码,ThinkPHP5.1的wms进销存源码,ThinkPHP5.1的wms进销存源码,
朋友圈社区程序源码基于thinkphp5.1+uniapp+mysql5.7开发.txt
lua5.1源码
包括MySQL 5.1官方简体中文参考手册以及白皮书之MySQL5.0存储过程的中文翻译