LAMP-mysql5.6的安装

 一、安装编译源码所需要的工具和库

yum install gcc gcc-c++ ncurses-devel perl

安装编译mysql必须cmake ,下载并编译安装cmake

#下载 
wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz

#解压
tar -zxvf cmake-2.8.10.2.tar.gz

#进入目录编译安装
cd cmake-2.8.10.2
./bootstrap
make && make install

二、设置mysql用户和组

#新建mysql用户组
groupadd mysql

#新建mysql用户
useradd -s /sbin/nologin  -g mysql mysql

三、新建mysql安装目录

#创建mysql安装目录
mkdir -p /usr/local/mysql

#创建mysql数据文件存放目录
mkdir -p /data/mysql

四、编译安装mysql - 从mysql5.5起,mysql源码安装开始使用cmake了

#下载mysql
wget  https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.37.tar.gz

#解压
tar -zxvf mysql-5.6.37.tar.gz

#设置编译参数
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/mysql \
-DMYSQL_TCP_PORT=3306 \
-DENABLE_DOWNLOADS=1

#编译安装
make && make install

 
参数设置的意义
-DCMAKE_INSTALL_PREFIX=dir_name        设置mysql安装目录

-DMYSQL_UNIX_ADDR=file_name            设置监听套接字路径,这必须是一个绝对路径名。默认为/tmp/mysql.sock

-DDEFAULT_CHARSET=charset_name         设置服务器的字符集。缺省情况下,MySQL使用latin1的(CP1252西欧)字符集。cmake/character_sets.cmake文件包含允许的字符集名称列表。

-DDEFAULT_COLLATION=collation_name     设置服务器的排序规则。

-DWITH_INNOBASE_STORAGE_ENGINE=1       存储引擎选项:MyISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1



静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1

可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)

-DMYSQL_DATADIR=dir_name         设置mysql数据库文件目录

-DMYSQL_TCP_PORT=port_num        设置mysql服务器监听端口,默认为3306

-DENABLE_DOWNLOADS=bool          是否要下载可选的文件。例如,启用此选项(设置为1),cmake将下载谷歌所使用的测试套件运行单元测试。

注:如果要重新运行配置,需要删除CMakeCache.txt文件



 五、修改目录所有者和组

#修改mysql安装目录
cd /usr/local/mysql
chown -R mysql:mysql .

#修改mysql数据文件目录
chown -R mysql:mysql /data/mysql

六、复制mysql服务启动配置以及修改

#复制
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

#修改配置
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]

# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin

# These are commonly set, remove the # and set as required.
basedir =/usr/local/mysql
datadir =/data/mysql
port = 3306
socket = /usr/local/mysql/mysql.sock

# server_id = .....

# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

七:初始化mysql数据库

#进入mysql安装目录
cd /usr/local/mysql

#初始化
scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

八、将mysql添加到服务中

#复制
cp support-files/mysql.server /etc/init.d/mysqld

#使用vim修改/etc/profie文件  在文件中追加2行

export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH

#保存后,使用
 source /etc/profile
#立即生效配置

九、开启服务并设置自启动

#开启mysql 
service mysqld start

#加入自启动
chkconfig mysqld on

十、检查mysql服务是否启动

1、netsat -tulnp |grep 3306

2、登入mysql,密码为空,如果能登录上,则安装成功
   mysql -u root -p 

十一、修改mysql用户root密码

mysqladmin -u root password '123456'


注:#sock问题 ---- sock的文件,必须存放在 mysql组和mysql用户的文件夹中,且必须有相应的权限
          暴力方法:将sock文件的文件设置成
           chown -R mysql:mysql  目录