|
所需源码包:
/usr/local/src/MySQL-5.5.25/cmake-2.8.8.tar.gz
/usr/local/src/MySQL-5.5.25/mysql-5.5.25.tar.gz
1、安装cmake
MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具。
因此,我们首先要在系统中源码编译安装cmake工具。
#编译安装
1 | cd /usr/local/src/MySQL-5.5.25/cmake-2.8.8 |
2、编译安装配置MySQL
#切换至 MySQL源码 解压目录
1 | cd /usr/local/src/MySQL-5.5.25/mysql-5.5.25 | #创建所需目录
1 | mkdir -pv /usr/local/mysql/data | #创建mysql用户和mysql组
2 | useradd -g mysql -s /usr/sbin/nologin mysql | #cmake编译
1 | cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_unicode_ci -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_DEBUG=0 | #安装
#复制配置文件
1 | cp ./support-files/my-medium.cnf /etc/my.cnf | #设置权限
1 | chmod +x /usr/local/mysql |
2 | chown -R mysql:mysql /usr/local/mysql |
3 | chown -R mysql:mysql /usr/local/mysql/data | #配置开机自动启动
1 | cp ./support-files/mysql.server /etc/init.d/mysqld |
2 | chmod +x /etc/init.d/mysqld |
4 | chkconfig --level 2345 mysqld on |
5 | chkconfig --list mysqld #查看是否已应用上 | #添加MySQL的软链接以适应init脚本
1 | ln -sv /usr/local/mysql/bin/mysql /usr/sbin/mysql |
2 | ln -sv /usr/local/mysql/bin/mysqladmin /usr/sbin/mysqladmin |
3 | ln -sv /usr/local/mysql/bin/mysqldump /usr/sbin/mysqldump | #修改配置文件
#在[mysqld]节点中添加:
1 | datadir = /usr/local/mysql/data |
2 | log-error = /usr/local/mysql/data/error.log |
3 | pid-file = /usr/local/mysql/data/mysql.pid |
#保存退出
#初始化数据库
1 | /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data | #修改root密码
1 | /usr/local/mysql/bin/mysqladmin -u root -p password "123456" | 配置防火墙,开启3306端口
1 | vim /etc/sysconfig/iptables | #添加如下规则到22端口这条规则的下面即可
1 | -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT | #重启防火墙
1 | /etc/init.d/iptables restart # 或 service iptables restart | 启动MySQL
1 | service mysqld start # 或 /etc/init.d/mysqld start | 测试MySQL是否启动
#查看是否有mysql进程
#查看是否有mysql端口
1 | netstat -ntlp | grep 3306 | #测试mysql,mysqladmin,mysqldump命令是否能正常使用
#读取MySQL的版本信息
到此MySQL编译安装完成。
MySQL5.5以前的版本(如MySQL5.1.x) ./configure 编译参考如下:
1 | ./configure --prefix=/usr/local/mysql/ --localstatedir=/usr/local/mysql/data--without-debug --with-unix-socket-path=/tmp/mysql.sock --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --enable-assembler --with-extra-charsets=gbk,gb2312,utf8 --with-pthread |
延伸阅读:
CentOS6.x编译安装LAMP(1):准备工作
CentOS6.x编译安装LAMP(2):编译安装 Apache2.2.25
CentOS6.x编译安装LAMP(2):编译安装 Apache2.4.6
CentOS6.x编译安装LAMP(3):编译安装 MySQL5.5.25
CentOS6.x编译安装LAMP(4):编译安装 PHP5.2.17
CentOS6.x编译安装LAMP(4):编译安装 PHP5.3.27
PHP5不重新编译,如何安装自带的未安装过的扩展,如soap扩展?
相关日志:
在CentOS5.5中,编译安装mysql-5.5.32.tar.gz时报错:‘SSL_OP_NO_COMPRESSION’ 未声明 (在此函数内第一次使用)
Linux下,如何给PHP安装pdo_mysql扩展
CentOS6.x编译安装LAMP(1):准备工作
CentOS6.x编译安装LAMP(2):编译安装 Apache2.2.25
CentOS6.x编译安装LAMP(2):编译安装 Apache2.4.6
CentOS6.x编译安装LAMP(4):编译安装 PHP5.2.17
LAMP一键安装包-CentOS 5/6下自动编译安装Apache、MySQL、PHP
CentOS6.x编译安装LAMP(4):编译安装 PHP5.3.27
CentOS编译安装Apache 2.4.x时报错:configure: error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.
PHP5不重新编译,如何安装自带的未安装过的扩展,如soap扩展? |
|
|
|
|
|
|