1.安装mysql编译过程中所需要的依赖关系以及编译工具
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel bison cmake
3.安装前需要检查一下是否安装mysql,如果有就卸载掉
rpm -qa | grep mysql
rpm -e --nodeps 安装包
4.对mysql源码包,解压
tar xvf mysql-mysql-5.5.35.t15.tar
或者解压到指定目录(如:/usr/local)
tar -zxvf mysql-mysql-5.5.35.t15.tar -C /usr/local
5.进入到mysql的解压目录,使用cmake编译、安装
cd mysql-mysql-5.5.35.t15
1)使用cmake编译(根据自己的具体要求选择编译参数,下边的选项参数仅供参考)
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
2)安装
#make && make install
稍等一会。。。
6.需要创建mysql用户和mysql组,并修改mysql安装目录的所属用户和组
1)创建mysql用户和mysql组
#groupadd mysql
#useradd -g mysql -s /sbin/nologin mysql
(/sbin/nologin:用户无法使用bash或其他shell来登陆系统,但这个账号可以使用系统资源)
2)修改mysql安装目录的所属用户和组
#chown -R mysql:mysql /usr/local/mysql
7.进入mysql安装目录,执行初始化脚本,创建mysql自带的数据库和表
cd /usr/local/mysql
cd scripts/
chmod a+x mysql_install_db
#./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
(如果出现utf8_general_ci 报错,在/etc/my.cnf中 [mysqld] character_set_server=utf8
[client] default-character-set = utf8)
8.修改配置文件
vi /etc/my.cnf (这里的配置文件也可以不用动)
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
datadir=/usr/local/mysql/data
Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
9.添加服务,设置mysql服务开机自启
1)添加服务,进入mysql安装目录,拷贝目录/support-files下的mysql.server文件到/etc/init.d/目录下,并重名为mysql
#cd /usr/local/mysql
#cp support-files/mysql.server /etc/init.d/mysql
2)设置开机自启
chkconfig mysql on
10.启动mysql服务
/etc/init.d/mysql restart
11.编译安装的mysql没有初始密码,所以要给root用户设置初始密码
#/usr/local/mysql/bin/mysqladmin -u root password '123456'
#ln -s /usr/local/mysql/bin/mysql.sock /usr/bin
12.因为手动编译的,所有要为mysql添加环境变量,不然在终端中输入mysql将会提示命令找不到
1)编辑/etc/profile,在文件末尾添加如下内容
export PATH=$PATH:/usr/local/mysql/bin
2)使文件立即生效
#source /etc/profile