当前位置: 首页 > 数据库 > MySQL教程 > 正文

MYSQL5.5手动编译安装过程

时间:2017-01-04

MYSQL5.5的手动编译安装

安装方式分为rpm和源码编译安装两种,本文是采用mysql源码编译方式,编译器使用Cmake。软件需要mysql-5.5.40.tar.gz和cmake-2.8.10.2.tar.gz,请自行下载。

下载地址:

http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.40.tar.gz

http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz

其中mysql使用最新的稳定版本,即最新试用版的上一个版本,且非rc或者alpha的版本,Cmake直接用的最新版。

》上传mysql-5.5.40.tar.gz和cmake-2.8.10.2.tar.gz到/usr/java/tools文件夹下。

》CentOS安装g++和ncurses-devel

# yum -y install gcc-c++
# yum -y install ncurses-devel 

》cmake的安装

# mkdir -p /usr/java/make
# cd /usr/java/make
# mv ../tools/cmake-2.8.10.2.tar.gz ./
# tar -zxv -f cmake-2.8.10.2.tar.gz 
# cd cmake-2.8.10.2
# ./configure
# make
# make install 

》将cmake永久加入系统环境变量
》用vi在文件/etc/profile文件中增加变量,使其永久有效,

# vi /etc/profile 

》在文件PATH中加入MAKE_PATH环境变量:

JAVA_HOME=/usr/java/jdk1.7.0_79
JRE_HOME=/usr/java/jdk1.7.0_79/jre
MAKE_PATH=/usr/java/cmake/cmake-2.8.10.2/bin
PATH=$MAKE_PATH:$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

》执行以下代码使刚才的修改生效:

# source /etc/profile 

》用 export 命令查看PATH值

# echo $PATH 

》创建mysql的安装目录及数据库存放目录

# mkdir -p /usr/java/mysql //安装mysql
# mkdir -p /usr/java/mysql/data //存放数据库 

》创建mysql用户及用户组

# groupadd mysql
# useradd -r -g mysql mysql

》编译安装mysql

# cd /usr/java/mysql
# tar zxvf ../tools/mysql-5.5.40.tar.gz 
# cd mysql-5.5.40/
# cmake -DCMAKE_INSTALL_PREFIX=/usr/java/mysql \
-DMYSQL_UNIX_ADDR=/usr/java/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-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/java/mysql/data \ 
-DMYSQL_USER=mysql \ 
-DMYSQL_TCP_PORT=6666
# make
# make install 

》检验是否安装成功

# cd  /usr/java/mysql 
[root@fiona mysql]# ls 
bin      data  include         lib  mysql-5.5.40  mysql-test  scripts  sql-bench
COPYING  docs  INSTALL-BINARY  man  mysql.sock    README      share    support-files

有bin等以上文件的话,恭喜你已经成功安装了mysql。

》配置mysql

》设置mysql目录权限

# cd /usr/java/mysql //把当前目录中所有文件的所有者设为root,所属组为mysql
# chown -R root:mysql . 
# chown -R mysql:mysql data 

》将mysql的启动服务添加到系统服务中

# cp support-files/my-medium.cnf /etc/my.cnf 

cp:是否覆盖"/etc/my.cnf"? y 

》创建系统数据库的表

# cd /usr/java/mysql 
# scripts/mysql_install_db --user=mysql 

》设置环境变量

# vi /root/.bash_profile
再修改PATH=$PATH:$HOME/bin为:
PATH=$PATH:$HOME/bin:/usr/java/mysql/bin:/usr/java/mysql/lib
# source /root/.bash_profile //使刚才的修改生效 

》手动启动mysql

# ./bin/mysqld_safe --user=mysql & //启动MySQL,但不能停止
mysqladmin -u root -p shutdown //此时root还没密码,所以为空值,提示输入密码时,直接回车即可。 

》将mysql的启动服务添加到系统服务中

# cp support-files/mysql.server /etc/init.d/mysql 

》启动mysql

# service mysql start
 Starting MySQL... ERROR! The server quit without updating PID file (/usr/java/mysql/data/localhost.localdomain.pid).

》启动失败:
》我这里是权限问题,先改变权限

# chown -R mysql:mysql /usr/java/mysql 

》接着启动服务器

# /etc/init.d/mysql start 

》修改MySQL的root用户的密码以及打开远程连接

# mysql -u root mysql 
mysql> use mysql;
mysql> desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; //为root添加远程连接的能力
mysql> update user set Password = password('x123456.') where User='root'; //设置root用户密码
mysql> select Host,User,Password from user where User='root';
mysql> flush privileges;
mysql> exit 

》重新登录

# mysql -u root -p
 enter password:x123456.000 

》若还不能进行远程连接,关闭防火墙

 [root@localhost]# /etc/rc.d/init.d/iptables stop 

用远程工具连接上了表示成功了。

来源:http://blog.csdn.net/yougoule/article/details/54014792