MYSQL5.5的手动编译安装

来源:互联网 发布:java后端开发教程 编辑:程序博客网 时间:2024/05/18 22:46

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_79JRE_HOME=/usr/java/jdk1.7.0_79/jreMAKE_PATH=/usr/java/cmake/cmake-2.8.10.2/binPATH=$MAKE_PATH:$PATH:$JAVA_HOME/bin:$JRE_HOME/binCLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/libexport 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-benchCOPYING  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 

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

0 0