Linux64位服务器编译安装MySQL5.6(CentOS6.4)
首先到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 然后输入如下配置
- #错误日志目录
- log-error = /data/mysql/3306/mysql_error.log
- #二进制日志目录
- log-bin = /data/mysql/3306/binlog/binlog
- #InnoDB 缓存数据大小(索引、锁、插入缓冲、数据字典等)
- #推荐设置为物理内存的25%-50%
- innodb_buffer_pool_size = 1G
- #InnoDB共享表空间初始化大小
- innodb_data_file_path = ibdata1:1G:autoextend
- #每次事务提交或事务外的指令都需要将日志写入硬盘,设置为1比较安全
- innodb_flush_log_at_trx_commit = 1
- #InnoDB日志缓存
- innodb_log_buffer_size = 64M
- #InnoDB 大量写操作时有帮助
- innodb_log_file_size = 256M
- #启用InnoDB的status file
- innodb_status_file = 1
- #最大连接数
- max_connections = 100
- #最大连接错误次数
- max_connect_errors = 10000
- #设置慢查询时间
- long_query_time = 1
- #设置临时表最大值,max_heap_table_size 和 tmp_table_size 要设置一样大
- max_heap_table_size = 96M
- 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)的更多相关文章
- centos6.7编译安装mysql5.7.17
centos6.7编译安装mysql5.7.17 2017-03-24 09:57:15 提示:mysql5.7.17和之前5.56以前的版本安装不一样,需要用cmake 另外,看本文档的mysql编 ...
- 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 ...
- centos6.5环境源码编译安装mysql5.6.34
centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...
- centos6.7下 编译安装MySQL5.7
centos6.7下编译安装MySQL5.7 准备工作 #-----依赖包及MySQL和boost安装包----- #yum包安装: shell> yum -y install gcc-c++ ...
- CentOS6.9 下编译安装MySQL5.7.19
官网:https://www.mysql.com/ 下载地址:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19.tar.gz 一.准备工作 ...
- CentOS6.5_64bit下编译安装MySQL-5.6.23
转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/44785511 ************************************** ...
- 内网服务器离线编译安装mysql5.7并调优
目录 内网服务器离线编译安装mysql5.7并调优 前言 关于MySQL 一.MySQL安装篇 部署环境 前期准备工具 挂载系统ISO镜像,配置yum源 二.MySQL调优篇 1.对MySQL进行安全 ...
- 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 ...
- Linux源码编译安装MySQL5.7
目录[-] 一.环境准备: 二.升级系统: 三.做一些准备工作(以下Linux命令均在su到root用户操作): 四.开始编译安装mysql-5.7.9: 一.环境准备: 我尝试过以下环境都是能成功的 ...
随机推荐
- 使用javamail发送邮件错误:550 5.7.1 Unable to relay
这两天由于客户的邮件服务器迁移,使用了NTLM的验证方式.系统使用javamailAPI进行发送邮件时,发现只能对内部邮箱进行发送,对外部邮箱进行发送的时候,报下图错误: 后面发现是由于系统的java ...
- Shiro-多Realm验证
1.多Realm验证 存在这样一种场景,同一个密码可能在MqSQL中存储,也可能在Oracle中存储,有可能MqSQL中使用的是MD5加密算法,而Oracle使用SHA1加密算法.这就需要有多个Rea ...
- 跟我一起学WCF(1)——MSMQ消息队列
一.引言 Windows Communication Foundation(WCF)是Microsoft为构建面向服务的应用程序而提供的统一编程模型,该服务模型提供了支持松散耦合和版本管理的序列化功能 ...
- Asp.Net Web API 2第一课——入门
详情请查看http://aehyok.com/Blog/Detail/68.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:ht ...
- Spec 网上选课
角色定义 管理员 管理员负责向系统中添加学生和教师的个人信息以及课程信息,实现对教师.学生和课程信息的修改.删除.查询操作,并对管理员个人密码进行修改. 学生 学生具有查看待选课程信息和任课教师信息. ...
- 我的cookie读写
前后台必须一致, 后台: public static void SetCookie(string cookieName, string value, int expiresDays){ var ...
- Coded UI Test中的数据驱动测试
有关什么是Coded UI Test以及如何使用Coded UI Test可以查看我的另一篇文章:http://www.cnblogs.com/jaxu/p/3706652.html 本文主要介绍如何 ...
- python获取当前日期前后N天或N月的日期
# -*- coding: utf-8 -*- '''获取当前日期前后N天或N月的日期''' from time import strftime, localtime from datetime im ...
- win2003 Enterprise Edition sp2 企业版序列号
HXCRB-TQW9R-42JK8-TQ7X2-PJRDY Windows Server 2003 R2, x32 EDDVB4Y-KF6GK-MT3XX-FW3HC-VXTB6
- 点击div外面该div消失(二)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...