CentOS6.5下编译安装MySQL 5.6.22
1、下载MySQL下载地址:http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.22.tar.gz
2、安装编译源码所需的工具和库
yum -y install gcc gcc-c++ ncurses-devel perl
3、下载、安装cmake(MySQL编译工具)
下载cmake
下载地址:http://www.cmake.org/files/v3.0/cmake-3.0.2.tar.gz
安装cmake
cd /home
tar xzvf cmake-3.0.2.tar.gz
cd /home/cmake-3.0.2
./bootstrap ; make ; make install
cd ~
4、设置MySQL用户和组
新增mysql用户组
groupadd mysql
新增mysql用户
useradd -r -g mysql mysql
5、新建MySQL所需要的目录
新建mysql安装目录
mkdir -p /usr/local/mysql
新建mysql数据库数据文件目录
mkdir -p /data0/mysql/data
6、编译安装MySQL
cd /home
tar -zxv -f mysql-5.6.22.tar.gz
cd mysql-5.6.22
从mysql5.5起,mysql源码安装开始使用cmake了。
设置编译参数
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/data0/mysql/data \
-DEXTRA_CHARSETS=all \
-DMYSQL_TCP_PORT=3306
注:重新运行配置,需要删除CMakeCache.txt文件
rm CMakeCache.txt
编译安装
make && make install
7、修改mysql目录所有者和组
修改/usr/local/mysql权限
chown -R mysql:mysql /usr/local/mysql
8、初始化配置
进入安装路径
cd /usr/local/mysql
初始化mysql数据库
scripts/mysql_install_db --datadir=/data0/mysql/data --user=mysql
9、复制mysql服务启动配置文件
注:如果/etc/my.cnf文件存在,则先删除。
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
10、复制mysql服务启动脚本及加入PATH路径
#拷贝服务脚本到init.d目录
cp support-files/mysql.server /etc/init.d/mysqld
#编辑/etc/profile文件,
vim /etc/profile
#在文件末尾添加
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH
#关闭文件,运行下面的命令,让配置立即生效
source /etc/profile
11、启动mysql服务并设置开机启动
service mysqld start
chkconfig --level 35 mysqld on
12、检查mysql服务是否启动
netstat -tulnp | grep 3306
mysql -u root -p
密码为空,如果能登陆上,则安装成功。
13、修改MySQL用户root的密码
mysqladmin -u root password '123456'
也可以进入mysql后修改
mysql -uroot
mysql> SET PASSWORD = PASSWORD('123456');
#删除多余用户
mysql> use mysql;
mysql> select host,user,password from user;
mysql> delete from user where not (user='root') ;
mysql> delete from user where user='root' and password='';
#删除测试数据库
mysql> show databases;
mysql> drop database test;
#设置root可以远程连接
mysql> update user set host='%' where user='root';
mysql>flush privileges;
至此,大功告成!
查看完整版本: CentOS6.5下编译安装MySQL 5.6.22
Tags: