========================Centos 6.2(x64)下编译安装MySQL-5.5.22========================- 软件源码包存放位置 /usr/local
源码包编译安装位置 /usr/local/mysql- ###########################################################################################
# #
# 现在的5.5以后的MySQL都使用Cmake进行编译安装,所以在安装MySQL之前我们首先要把Cmake装在我们的系统。#
# #
###########################################################################################- 我们所需要的软件源码包有以下:
cmake-2.8.7.tar.gz
mysql-5.5.22.tar.gz(mysql版本可以更新)
1、安装Cmake
#安装所需依赖关系
yum -y install ntp vim-enhanced gcc gcc-c++ flex bison autoconf automake bzip2-devel- ncurses-devel zlib-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel
- libXpm-devel gettext-devel pam-devel libtool libtool-ltdl openssl openssl-devel
- fontconfig-devel libxml2-devel curl-devel libicu libicu-devel libmcrypt libmcrypt-devel
- libmhash libmhash-devel
- 安装 mcrypt时如果提示libmcrypt没有找到 运行
export LD_LIBRARY_PATH=/usr/local/libmcrypt/lib:/usr/local/mhash/lib
export LDFLAGS="-L/usr/local/mhash/lib/ -I/usr/local/mhash/include"
export CFLAGS="-I/usr/local/mash/include/"
./configure --prefix=/usr/local/mcrypt --with-libmcrypt --prefix=/usr/local/libmcrypt- #下载Cmake的源码包
#编译安装
tar zxvf cmake-2.8.7.tar.gz- cd cmake-2.8.7
- ./configure && make && make install
2、编译安装配置MySQL#
创建所需目录 mkdir -pv /usr/local/mysql/data //同时创建mysql和data两个目录并输出创建信息
创建mysql组 groupadd mysql
创建mysql用户 useradd -g mysql -s /sbin/nologin mysql
#解压源码包tar -zxvf 源码包路径 -C /usr/src/ 本人常解压在此目录下面
cd /usr/src/mysql目录
#cmake编译
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5 -DMYSQL_UNIX_ADDR=/usr/local/mysql5/mysql.sock- -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all
- -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1
- -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/usr/local/mysql5/data
- -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306
==============================================================================
参数说明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data //数据库存放目录
-DWITH_MYISAM_STORAGE_ENGINE=1 //安装myisam存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 //安装innodb存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 //安装archive存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 //安装blackhole存储引擎
-DENABLED_LOCAL_INFILE=1 //允许从本地导入数据
-DDEFAULT_CHARSET=utf8 //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校验字符
-DEXTRA_CHARSETS=all //安装所有扩展字符集
-DMYSQL_TCP_PORT=3306 //MySQL监听端口
-DMYSQL_USER=mysql //MySQL用户名- -DWITH-EMBEDDED_SERVER=1 //编译成embedded MySQL library (libmysqld.a)
-DSYSCONFDIR=/etc //MySQL配辑文件
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock //Unix socket 文件路径
-DWITH_READLINE=1 //快捷键功能
-DWITH_SSL=yes //SSL
-DWITH_MEMORY_STORAGE_ENGINE=1 //安装memory存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 //安装frderated存储引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 //安装数据库分区
-DINSTALL_PLUGINDIR=/usr/local/mysql/plugin //插件文件及配置路径- =========================================================================================
#安装
make && make install- #复制配置文件(源码目录下面)
cp support-files/my-medium.cnf /etc/my.cnf
#设置权限
chmod +x /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql/data
#配置开机自动启动
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
#修改配置文件
vim /etc/my.cnf
#在[mysqld]中添加:
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/data/error.log
pid-file = /usr/local/mysql/data/www.pid //(此处的pid文件名称要与主机名称一致)
user = mysql
tmpdir = /tmp
#保存退出
#初始化数据库
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql- --datadir=/usr/local/mysql/data
#手动启动MySQL
service mysqld start- 加入环境变量,在/etc/profile文件中最后加入:
export PATH=/usr/local/mysql/bin:$PATH- 修改默认的mysql最大连接数(默认只有151),打开/etc/my.cnf文件,在[mysqld]的下面加入:
- max_connections=1000,然后重启mysql即可生效,查看最大连接数:
mysql>show VARIABLES LIKE '%conn%';- ###############################################################################
# #
#此时如果启动失败,查看日志,如果提示字符集无效,修改my.cnf配置文件,添加下面设置 #
#[client] #- #linux环境下面设置此值 #
#default-character-set=utf8 #- # #
#[mysqld] #
#character-set-server=utf8 #
#保存退出后重新初始化数据库 #- # #
#/usr/local/mysql/scripts/mysql_install_db --user=mysql #- #--basedir=/usr/local/mysql --datadir=/usr/local/mysql/data #
# #
###############################################################################
#测试MySQL是否启动
#查看是否有mysql进程
ps -ef | grep mysql
#查看是否有mysql端口
netstat -tnlp | grep 3306- 如果提示[ERROR] Plugin 'InnoDB' init function returned error,把安装目录下面的ib_logfile0
- 和ib_logfile1删除或者重命名
- 重启Mysqld服务
- 设置Mysql程序执行路径
export PATH=$PATH:/usr/local/mysql/bin
echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
#读取MySQL的版本信息mysqladmin version
===========================到此MySQL编译安装完成=========================================- #######################################################
# #
# 第一次登录默认为空密码 #
# #
# mysql -u root #
# #
# 修改root登录数据库的密码 #
# #
# mysqladmin -u root password "自定义的密码" #
# #
#######################################################