编译安装 MySQL-5.5.32

操作前(需关闭防火墙,关闭SELINUX)

1.准备 mysql-5.5.32.tar.gz

2.查看依赖包是否安装。
[root@JH-1 tools]# rpm -qa | grep ncurses-devel libaio-devel cmake

3.yum安装依赖包(在依赖包查看不存在时操作)
[root@JH-1 tools]# yum -y install ncurses-devel libaio-devel cmake

4.创建用户
[root@JH-1 tools]# groupadd mysql
[root@JH-1 tools]# useradd mysql -s /sbin/nologin -M -g mysql

5.解压mysql源码包,并进入其解压后的文件夹。
[root@JH-1 tools]# tar -zxvf mysql-5.5.32.tar.gz
[root@JH-1 tools]# cd mysql-5.5.32/

6.解压编译MySQL(整个时间可能过长)
[root@JH-1 tools]# cd /tools/mysql-5.5.32
[root@JH-1 mysql-5.5.32]#
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.32 \
-DMYSQL_DATADIR=/application/mysql-5.5.32/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.5.32/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \
-DENABLED_LOCAL_INFILE=ON \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FAST_MUTEXES=1 \
-DWITH_ZLIB=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_READLINE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DWITH_DEBUG=0

[root@JH-1 mysql-5.5.32]# make && make install
[root@JH-1 mysql-5.5.32]# ln -s /application/mysql-5.5.32 /application/mysql
[root@JH-1 mysql-5.5.32]# cd /tools/mysql-5.5.32
[root@JH-1 mysql-5.5.32]# cp support-files/my-small.cnf /etc/my.cnf
[root@JH-1 mysql-5.5.32]# cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@JH-1 mysql-5.5.32]# chown -R mysql.mysql /application/mysql
[root@JH-1 mysql-5.5.32]# chmod +X /etc/init.d/mysqld

5.加入环境变量
[root@JH-1 mysql-5.5.32]# export PATH="/application/mysql/bin:$PATH" >>/etc/profile (方便以后用相对路径启动服务)

6.初始化mysql
[root@JH-1 mysql]# cd /application/mysql/scripts/
[root@JH-1 scripts]# ./mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
[root@JH-1 scripts]# /etc/init.d/mysqld start
Starting MySQL... SUCCESS!
[root@JH-1 scripts]# mysql
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

猜你喜欢

转载自www.cnblogs.com/jiang-bokeyuan/p/11740926.html