ychristysl00 2017-05-12
安装前准备
通过rpm命令检查centos上是否已经安装mysql,然后卸载已经存在的mysql版本
[root@localhost src]# rpm -qa|grep mysql mysql-libs-5.1.66-2.el6_3.i686 [root@localhost src]# rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.i686
通过yum安装mysql编译需要的依赖包
[root@localhost src]# yum install gcc gcc-c++ perl
下载mysql5.6安装包,mysql5.6安装包下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.36.tar.gz。
添加mysql用户组和用户,以及mysql的安装目录
[root@localhost src]# groupadd mysql [root@localhost src]# useradd -g mysql -s /sbin/nologin -M mysql [root@localhost src]# mkdir /usr/local/mysql [root@localhost src]# id mysql uid=501(mysql) gid=501(mysql) groups=501(mysql)
给mysql的安装目录授权
[root@localhost src]# chown -R mysql.mysql /usr/local/mysql [root@localhost src]# ll /usr/local drwxr-xr-x. 2 mysql mysql 4096 May 11 09:09 mysql
开始安装
解压缩之后进入,mysql5.6起都是通过cmake的方式进行配置的,可以直接采用默认的方式cmake .就能直接进入配置,也可以自己指定配置,下面自己执行配置,修改一些常规的mysql配置井号#后面是注释
[root@localhost mysql-5.6.36]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定安装目录 > -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \#指定mysql.sock地址 > -DDEFAULT_CHARSET=utf8 \#指定默认的字符集 > -DDEFAULT_COLLATION=utf8_general_ci \#指定默认的排序字符集 > -DWITH_INNOBASE_STORAGE_ENGINE=1 \#安装innodb存储引擎 > -DWITH_MYISAM_STORAGE_ENGINE=1 \安装myisam存储引擎 > -DWITH_ARCHIVE_STORAGE_ENGINE=1 \安装archive存储引擎 > -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \安装blackhole存储引擎 > -DMYSQL_DATADIR=/usr/local/mysql/data \#mysql数据文件存放目录 > -DMYSQL_TCP_PORT=3306 \#端口 > -DENABLE_DOWNLOADS=1
配置之后,可能会出现错误
提示错误:Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
这里是提示找不到Curses,通过yum安装库
[root@localhost src]# yum -y install ncurses-devel
然后删除掉CMakeCache.txt重新cmake
[root@localhost mysql-5.6.36]# rm -rf CMakeCache.txt
cmake之后没报错,直接执行make&& make install
安装数据文件
mysql安装完成之后需要安装文件,在mysql的安装目录下的scripts文件夹里可以看到mysql_install_db,用来安装mysql数据文件,指定mysql用户
[root@localhost mysql]# ls /usr/local/mysql/scripts/ mysql_install_db [root@localhost mysql]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
启动mysql
[root@localhost mysql]# /usr/local/mysql/support-files/mysql.server start Starting MySQL.. SUCCESS!
登录mysql
[root@localhost mysql]# /usr/local/mysql/bin/mysql -uroot
第一次登陆不需要密码,需要通过mysqladmin设置root登录密码、
[root@localhost mysql]# /usr/local/mysql/bin/mysqladmin -uroot password '111111'
查看mysql配置文件
[root@localhost mysql]# /usr/local/mysql/bin/mysql --verbose --help |grep -A 1 'Default options' Default options are read from the following files in the given order: /etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf
可以看到mysql的配置文件是存放在多个位置的,读取的顺序依次是
/etc/my.cnf 、/etc/mysql/my.cnf 、/usr/local/mysql/etc/my.cnf 、~/.my.cnf
那么我们复制mysql安装目录下的support-files文件夹中的my-default.cnf配置文件到/etc/my.cnf即可
[root@localhost support-files]# cp my-default.cnf /etc/my.cnf
如果存在直接覆盖就好了,这里最好把/etc/my.cnf改变下所有者
环境变量的配置,便于使用
将mysql服务启动放在/etc/init.d/下
[root@localhost support-files]# cp mysql.server /etc/init.d/mysqld
将/usr/local/mysql/bin/目录添加到环境变量中,vim编辑vim /etc/profile永久添加环境变量,重启生效
export PATH=$PATH:/usr/local/mysql/bin
如果不想重启,也可以在在编辑完vim /etc/profile之后,执行脚本
[root@localhost support-files]# export PATH=$PATH:/usr/local/mysql/bin
此种方式终端关闭之后就会失效