MySQL 5.6安装

安装环境:
Centos:6.8
Mysql:5.6
首先清除主机自带的MySQL,
安装编译源码所需的工具和库
yum install gcc gcc-c++ ncurses-devel perl

安装cmake,从 www.cmake.org 下载源码并编译安装
tar -xzvf cmake-2.8.10.2.tar.gz
cd cmake-2.8.10.2
./bootstrap
make && make install

下载MySQL源码包后开始编译
tar -zxf mysql-5.6.23.tar.gz
cd mysql-5.6.23
 
 
 
一些准备工作
设置MySQL用户和组
新增mysql用户组
groupadd mysql

新增mysql用户
useradd -r -g mysql mysql

新建MySQL所需要的目录
新建mysql安装目录
mkdir -p /usr/local/mysql
 
新建mysql数据库数据文件目录
mkdir -p /data/mysqldb
 
 
 
编译安装
CMake执行脚本为:
cmake
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DMYSQL_DATADIR=/data/mysqldb
-DMYSQL_TCP_PORT=3306
-DENABLE_DOWNLOADS=1

说明:
网上有些文章中给出的cmake命令如下:
Cmake --DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk
-DWITH_MYISAM_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_MEMORY_STORAGE_ENGINE=1
-DWITH_READLINE=1
-DENABLED_LOCAL_INFILE=1
-DMYSQL_DATADIR=/data/mysql
-DMYSQL_USER=mysql
-DMYSQL_TCP_PORT=3306

编译后警告显示:

即MYSQL_USER等模块式不可用的。
此时,若需要重新配置,请删除CMakeCache.txt文件:
rm CMakeCache.txt
 
去掉MYSQL_USER等不可被用的选项后,再重新编译即可。
10.
cmake--DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk
-DWITH_MYISAM_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DENABLED_LOCAL_INFILE=1
-DMYSQL_DATADIR=/data/mysql
-DMYSQL_TCP_PORT=3306

编译 & 安装
make &&make install
这两步都需要很长时间,请耐心等待。

修改mysql目录所有者和组
修改mysql安装目录
cd /usr/local/mysql
chown -R mysql:mysql .
 
修改mysql数据库文件目录
cd /data/mysqldb
chown -R mysql:mysql .
 
说明:
chown 最后跟文件名。此处使用".",表示当前目录。

启动MySQL
初始化mysql数据库
cd /usr/local/mysql
scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb

说明:
从打印日志可以看出,mysql_install_db命令的作用是生成MySQL系统表。并且最后在mysql目录下生成一个my.cnf文件。
--user=mysql 作用是指定运行mysqld进程的用户名。设置这个用户以后,所有通过mysqld进程创建的文件(如日志等)都会属于这个用户。

mysql配置文件
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
注:如果/etc/my.cnf文件存在,则覆盖。
关于MySQL配置文件存在多个访问位置。MySQL会以此访问,后访问到的配置会覆盖先前的配置。
MySQL访问配置文件的访问路径与访问顺序如下:

 
配置MySQL
[client]
#password = your_password
port = 3306
socket = /data/mysql/mysql.sock
default-character-set=utf8
.注释Here follows entries for some pecific programs
注释:The MySQL server

[mysqld]
port = 3306
character_set_server=utf8
basedir=/data/mysql
datadir=/data/mysql/data
socket = /data/mysql/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

将MySQL执行命令添加入PATH
vim /etc/profile
 
在文件的末尾添加内容:
PATH=$PATH:/usr/local/mysql/bin
export PATH 
保持退出后,执行:
source /etc/profile

将MySQL设置为系统服务并启动服务
cp support-files/mysql.server /etc/init.d/mysqld
 
即,MySQL可以以如下形式启动:
service mysqld start
 
如果报错 "Starting MySQL. ERROR! The server quit without updating PID file (/data/mysql/rhelubuntu.com.pid). " 则修改
vim /etc/init.d/mysqld
修改basedir=/usr/local/mysql             -----mysql安装位置
修改datadir=/var/data/mysqldata          -----mysql数据文件存放位置
 一般修改好这个再重新启动mysql应该不会报错了。
 
检查MySQL是否已经启动:
netstat -tulnp | grep 3306
 
 
配置用户
使用MySQL客户端连接MySQL服务器
mysql -u root -p
初始密码为空,如果能登陆上,则安装成功。
 
设置mysql管理员密码
mysqladmin -u root password "123456";
则123456即为新密码。
 
设置mysql 远程登录
grant all on . to root@'%';
flush privileges;

猜你喜欢

转载自blog.51cto.com/12015549/2170711