一 RPM安装包卸载
1, 检查是否有安装MySQL
[root@localhost ~]# rpm -qa | grep mysql
mysql-devel-5.1.73-3.el6_5.x86_64
php-mysql-5.3.3-27.el6_5.x86_64
mysql-5.1.73-3.el6_5.x86_64
mysql-libs-5.1.73-3.el6_5.x86_64
mysql-server-5.1.73-3.el6_5.x86_64
检测到MySQL相关的安装包有5个
2, 执行rpm -e 卸载 (--nodeps)
[root@localhost ~]# rpm -e mysql-devel
[root@localhost ~]# rpm -e php-mysql
[root@localhost ~]# rpm -e mysql
[root@localhost ~]# rpm -e mysql mysql-server
如果为x64系统,执行下面命令卸载
{root@localhost Server]# rpm -e mysql --allmatches --nodeps
3, 删除my.cnf
[root@localhost ~]# rm -rf /etc/my.cnf
二,安装MySQL
1, 安装cmake
[root@localhost ~]# tar xvf cmake-3.0.0.tar.gz
[root@localhost ~]# cd cmake-3.0.0
[root@localhost cmake-3.0.0]# ./configure
-- Looking for elf.h
-- Looking for elf.h - found
-- Looking for a Fortran compiler
-- Looking for a Fortran compiler - NOTFOUND
-- Performing Test run_pic_test
-- Performing Test run_pic_test - Success
-- Configuring done
-- Generating done
-- Build files have been written to: /root/cmake-3.0.0
---------------------------------------------
CMake has bootstrapped. Now run gmake.
看到上面提示表示编译完成,执行make
[root@localhost cmake-3.0.0]# make && make install
2, 创建mysql的安装目录及数据存放目录
[root@localhost ~]# mkdir -p /opt/mysql //安装mysql
[root@localhost ~]# mkdir -p /opt/mysql/data //存放数据
3 创建mysql用户及用户组
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql mysql
4 赋予数据存放目录权限
chown mysql:mysql -R /opt/mysql/data
5 编译安装mysql
[root@localhost ~]# tar xvf mysql-5.6.19.tar.gz
[root@localhost ~]# cd mysql-5.6.19
[root@localhost ~]# cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql \
-DSYSCONFDIR=/opt/mysql/etc \
-DMYSQL_DATADIR=/opt/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_SSL=bundled \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
参数说明:
CMAKE_INSTALL_PREFIX : MySQL安装目录
SYSCONFDIR : 配置文件目录
MYSQL_DATADIR :数据库目录
MYSQL_TCP_PORT :数据库端口
MYSQL_UNIX_ADDR :安排个目录放mysql.sock文件,可以设置为日志存放,data存放目录等位置
WITH_EXTRA_CHARSETS : 字符
WITH_SSL :the type of SSL
WITH_EMBEDDED_SERVER :Whether to build embedded server (默认:OFF)
ENABLED_LOCAL_INFILE :Whether to enable LOCAL for LOAD DATA INFILE(默认:OFF) 允许从本地导入数据
WITH_INNOBASE_STORAGE_ENGINE: 1
参数详细见:http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html
编译时如果报下面错误
-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Error at cmake/readline.cmake:85 (MESSAGE):
Curses library not found. Please install appropriate package,
remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
Call Stack (most recent call first):
cmake/readline.cmake:128 (FIND_CURSES)
cmake/readline.cmake:202 (MYSQL_USE_BUNDLED_EDITLINE)
CMakeLists.txt:417 (MYSQL_CHECK_EDITLINE)
挂载光盘安装 ncurses-devel
[root@localhost Server]# rpm -ivh ncurses-devel-5.5-24.20060715.x86_64.rpm
warning: ncurses-devel-5.5-24.20060715.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:ncurses-devel ########################################### [100%]
[root@localhost Server]#
删除CMakeCache.txt重新编译
[root@localhost]# rm -rf CMakeCache.txt
[root@localhost]# make && make install
6 初始化MySQL
[root@localhost mysql]# cd /opt/mysql
[root@localhost mysql]# mkdir etc
[root@localhost mysql]# mkdir log
[root@localhost mysql]# chown -R mysql .
[root@localhost mysql]# chgrp -R mysql .
[root@localhost mysql]# scripts/mysql_install_db --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql/data/
[root@localhost mysql]# chown -R root .
[root@localhost mysql]# chown -R mysql data
[root@localhost mysql]# bin/mysqld_safe --user=mysql &
7 配置数据库
修改密码:
[root@localhost mysql]# bin/mysqladmin -u root password 'mysql'
[root@localhost mysql]# cp support-files/mysqld /etc/init.d/mysqld
[root@localhost mysql]# cp support-files/my-default.cnf etc/my.cnf
编辑etc/my.cnf,在[mysqld]下增加lower_case_table_names=1
设置环境变量
[root@localhost etc]# cd /etc
[root@localhost etc]# vi profile
在文件最后增加:
PATH=/opt/mysql/bin:/opt/mysql/lib:$PATH
export PATH
8 设置MySQL自动启动
[root@localhost mysql]# chkconfig --level 35 mysqld on
[root@localhost mysql]# chkconfig | grep mysql
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off