首先到MySQL官网下载MySQL最新版(目前是mysql-5.6.12)上传到服务器上,下面说一下详细的安装过程。

安装依赖包,可以在线更新也可以配置本地源(CentOS本地源配置
yum -y install cmake make ncurses-devel gcc gcc-c++ bison perl

创建MySQL用户和用户组

/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql

解压缩

tar zxvf mysql-5.6.12.tar.gz
cd mysql-5.6.12

MySQL5.5之前的版本是configure现在是cmake,格式略有不同,以下使用了换行符,如果不用换行符则在同一行。

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql \
-DSYSCONFDIR=/usr/local/webserver/mysql \
-DMYSQL_DATADIR=/data/mysql/3306/data \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_USER=mysql

编译安装

make
make install

更改目录所有者为mysql并创建相关目录

chown -R mysql:mysql /usr/local/webserver/mysql
mkdir -p /data/mysql/3306/data/
mkdir -p /data/mysql/3306/binlog/
mkdir -p /data/mysql/3306/relaylog/
chown -R mysql:mysql /data/mysql/

对数据库进行初始化

/usr/local/webserver/mysql/scripts/mysql_install_db --basedir=/usr/local/webserver/mysql \
--datadir=/data/mysql/3306/data --user=mysql --defaults-file=/usr/local/webserver/mysql/my.cnf \
--explicit_defaults_for_timestamp

删除默认配置文件并设置开机启动

rm -rf /etc/my.cnf
cd support-files/
cp mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on

启动MySQL

service mysqld start

登录MySQL并创建默认用户

登陆mysql
/usr/local/webserver/mysql/bin/mysql

登录后再MySQL命令界面下执行如下命令创建root用户,并将密码也设置成root(当然可以设置为其他值)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY 'root';
flush privileges;

到此为止已经安装完成!

其他优化配置可以参考如下做法:

编辑MySQL的配置文件vi /usr/local/webserver/mysql/my.cnf 然后输入如下配置

  1. #错误日志目录
  2. log-error = /data/mysql/3306/mysql_error.log
  3. #二进制日志目录
  4. log-bin = /data/mysql/3306/binlog/binlog
  5. #InnoDB 缓存数据大小(索引、锁、插入缓冲、数据字典等)
  6. #推荐设置为物理内存的25%-50%
  7. innodb_buffer_pool_size = 1G
  8. #InnoDB共享表空间初始化大小
  9. innodb_data_file_path = ibdata1:1G:autoextend
  10. #每次事务提交或事务外的指令都需要将日志写入硬盘,设置为1比较安全
  11. innodb_flush_log_at_trx_commit = 1
  12. #InnoDB日志缓存
  13. innodb_log_buffer_size = 64M
  14. #InnoDB 大量写操作时有帮助
  15. innodb_log_file_size = 256M
  16. #启用InnoDB的status file
  17. innodb_status_file = 1
  18. #最大连接数
  19. max_connections = 100
  20. #最大连接错误次数
  21. max_connect_errors = 10000
  22. #设置慢查询时间
  23. long_query_time = 1
  24. #设置临时表最大值,max_heap_table_size 和 tmp_table_size 要设置一样大
  25. max_heap_table_size = 96M
  26. tmp_table_size = 96M

修改后重启MySQL,如果不能重启成功需要将/data/mysql/3306/data目录下的ibdata1及ib_logfile*文件删除然后重新启动。

本文中用到的MySQL源码包可以点此下载(mysql-5.6.12)点此下载(mysql-5.6.14)  s

Linux64位服务器编译安装MySQL5.6(CentOS6.4)的更多相关文章

  1. centos6.7编译安装mysql5.7.17

    centos6.7编译安装mysql5.7.17 2017-03-24 09:57:15 提示:mysql5.7.17和之前5.56以前的版本安装不一样,需要用cmake 另外,看本文档的mysql编 ...

  2. CentOS6.3 编译安装LAMP(3):编译安装 MySQL5.5.25

    所需源码包: /usr/local/src/MySQL-5.5.25/cmake-2.8.8.tar.gz /usr/local/src/MySQL-5.5.25/mysql-5.5.25.tar.g ...

  3. centos6.5环境源码编译安装mysql5.6.34

    centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...

  4. centos6.7下 编译安装MySQL5.7

    centos6.7下编译安装MySQL5.7 准备工作 #-----依赖包及MySQL和boost安装包----- #yum包安装: shell> yum -y install gcc-c++ ...

  5. CentOS6.9 下编译安装MySQL5.7.19

    官网:https://www.mysql.com/ 下载地址:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19.tar.gz 一.准备工作 ...

  6. CentOS6.5_64bit下编译安装MySQL-5.6.23

    转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/44785511 ************************************** ...

  7. 内网服务器离线编译安装mysql5.7并调优

    目录 内网服务器离线编译安装mysql5.7并调优 前言 关于MySQL 一.MySQL安装篇 部署环境 前期准备工具 挂载系统ISO镜像,配置yum源 二.MySQL调优篇 1.对MySQL进行安全 ...

  8. centos6.6下编译安装mysql5.6之后启动失败:Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).

    今天在编译安装mysql5.6时候出现Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysq ...

  9. Linux源码编译安装MySQL5.7

    目录[-] 一.环境准备: 二.升级系统: 三.做一些准备工作(以下Linux命令均在su到root用户操作): 四.开始编译安装mysql-5.7.9: 一.环境准备: 我尝试过以下环境都是能成功的 ...

随机推荐

  1. VC中LINK 2001 和 LINK 2009 的错误的解决

    最近将两个开源C++项目编译成windows版本的时候遇到很多问题,关键是两个项目经过同事的修改之后,一个项目引用了另一个项目,两个项目的头文件中都有一些跨平台的关于数据类型,以及一些通用函数的定义, ...

  2. 客户端缓存 HTML + 远程数据 JS 的思路。

    移动客户端,采用客户端集成 WebBrowser 的方式 ,加载远程网页的优化方案. 1. 远程 HTML版本 v1.2 一次性加载到客户端 2. 手机端打开时,检测HTML版本. 如果有新版,先更新 ...

  3. 曲演杂坛--为什么SELECT语句会被其他SELECT阻塞?

    很多刚入门的DBA在捕获阻塞得时候,会问这么一个问题“为什么这个SELECT语句被那个SELECT语句阻塞了,难道不是共享锁么?” 让我们来做个小测试,首先准备一些测试数据: --========== ...

  4. 【WPF】提高InkAnalyer手写汉字识别的准确率

    最近项目中需要用到一个手写键盘,我们使用了WPF的InkCanvas+InkAnalyer来开发. 按照文档,一般的代码写法如下: var analyzer = new InkAnalyzer(); ...

  5. Linux:Vim

    模式介绍: Vim具备6种基本模式和5中派生模式. 普通模式 启动后的默认模式,用于:移动光标.删除文本等待,常用命令: dd:删除当前行. [number]dd:连续执行number对应次数的dd命 ...

  6. ASP.NET MVC中三方登录: 微软、谷歌、Office365

    创建一个MVC的工程,在Startup.Auth.cs文件中,我们能看到这样的一些代码: 这其实是微软已经帮我们实现好的三方登录的接口,我们只需要创建相应的开发者账号,并在其中配置好跟我们应用程序相关 ...

  7. 使用Nito.AsyncEx实现异步锁

    Lock是常用的同步锁,但是我们无法在Lock的内部实现异步调用,比如我们无法使用await. 以下面的代码为例,当你在lock内部使用await时,VS会报错提醒. 最简单的解决办法就是使用第三方的 ...

  8. 访问IIS元数据库失败解决方法

    问题:访问元数据失败 详细信息 访问 IIS 元数据库失败. 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信 ...

  9. paramiko操作详解(封装好的类,可以直接使用)

    #!/usr/bin/env python #encoding:utf8 #author: djoker import paramiko class myParamiko: def __init__( ...

  10. iOS-App生命周期

    iOS APP 生命周期   官方文档: https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneO ...