Centos 5.6编译安装mysql 5.5.11

MySQL 最新的版本5.5.11需要cmake编译安装,估计以后的版本也会采用这种方式,网上找了一些安装方法有些地方是错的,自己整理一份 所以特地记录一下安装步骤及过程,以供参考!
1      mysql 5.5.11编译安装
1.1      安装所需要系统库相关库文件

gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*


1.2      创建mysql安装目录  

[root@localhost mysql-5.5.11]# mkdir -p /usr/local/mysql/


1.3      创建数据存放目录

[root@localhost mysql-5.5.11]# mkdir -p /data/mysql/


1.4      创建用户和用户组与赋予数据存放目录权限

[root@localhost mysql-5.5.11]# groupadd mysql
[root@localhost mysql-5.5.11]# useradd -g mysql mysql
[root@localhost mysql-5.5.11]# chown mysql.mysql -R /data/mysql/


1.5      安装cmake 
(mysql5.5以后是通过cmake来编译的)下载解压cmake-2.8.4.tar.gz

[root@localhost mysql-5.5.11]# wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz
[root@localhost mysql-5.5.11]# tar zxvf cmake-2.8.4.tar.gz
[root@localhost mysql-5.5.11]# cd cmake-2.8.4
[root@localhost cmake-2.8.4]# ./bootstrap 


 --------------------------------------------- CMake 2.8.4, Copyright 2000-2009 Kitware, Inc. --------------------------------------------- Error when bootstrapping CMake: Cannot find appropriate C compiler on this system. Please specify one using environment variable CC. See cmake_bootstrap.log for compilers attempted.  --------------------------------------------- Log of errors: /usr/local/src/cmake-2.8.4/Bootstrap.cmk/cmake_bootstrap.log ---------------------------------------------
报错:缺少C的编译器。
安装gcc编译器
可以从Linux系统的安装盘中安装,也可以简单地用yum安装

[root@localhost ~]# yum install gcc


继续cmake的安装

[root@localhost cmake-2.8.4]# ./bootstrap  
--------------------------------------------- CMake 2.8.4, Copyright 2000-2009 Kitware, Inc. C compiler on this system is: cc  --------------------------------------------- Error when bootstrapping CMake: Cannot find appropriate C++ compiler on this system. Please specify one using environment variable CXX. See cmake_bootstrap.log for compilers attempted. --------------------------------------------- Log of errors: /usr/local/src/cmake-2.8.4/Bootstrap.cmk/cmake_bootstrap.log ---------------------------------------------


再次报错:缺少C++编译器。
安装gcc-c++编译器
同样可以从Linux系统的安装盘中安装,或者简单地用yum安装

[root@localhost ~]# yum install gcc-c++


重复上面的操作

[root@localhost cmake-2.8.4]# ./bootstrap


没有报错后,编译安装

[root@localhost cmake-2.8.4]# gmake 
[root@localhost cmake-2.8.4]# gmake install
[root@localhost cmake-2.8.4]#./configure
[root@localhost cmake-2.8.4]# make && make install


1.6      安装mysql 5.5.11

[root@localhost mysql-5.5.11]#wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.11.tar.gz
[root@localhost down]# tar zxvf mysql-5.5.11.tar.gz
[root@localhost down]# cd mysql-5.5.11


1.7      编译mysql-5.5.11

[root@localhost mysql-5.5.11]#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/data/mysql \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306


上面的命令一次拷进命令行。

[root@host mysql-5.5.11]# make
[root@host mysql-5.5.11]# make install


1.8      复制配置文件

[root@mysql-5.5.11]# cp support-files/my-medium.cnf /etc/my.cnf


1.9      初始化数据库
(执行前 需要chmod 755 scripts/mysql_install_db 赋给文件执行权限)

[root@localhost mysql-5.5.11]#scripts/mysql_install_db  --user=mysql  --basedir=/usr/local/mysql --datadir=/data/mysql/


注:#basedir mysql安装路径 datadir 数据库文件储存路径

 


设置mysqld的开机启动:

[root@mysql-5.5.11]# cp support-files/mysql.server /etc/init.d/mysql

[root@mysql-5.5.11]# chmod 755 /etc/init.d/mysql

chkconfig mysql on



1.11 配置环境

为了方便,将mysql 的bin目录加到PATH中,在/etc/profile中加入myslq/bin,顺便增加两个别名方便操作:

export PATH=/usr/local/mysql/bin:$PATH


开关客户端

alias mysql_start="mysqld_safe&"

alias mysql_stop="mysqladmin -uroot -p shutdown"


1.12 启动mysql服务

[root@localhost mysql-5.5.11]# /etc/init.d/mysql start //服务器端开关

/etc/init.d/mysql start

Starting MySQL.The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid). [FAILED] 启动mysql失败



解决Mysql不能启动的问题

安装好MYSQL后启动数据库出错

[root@localhost mysql]# service mysqld start
Starting MySQL..Manager of pid-file quit without updating f[失败]


在网上查了半天,找到的有两种方法,
1、在 my.cnf 中增加了 在server下面

# The MySQL server

[mysqld]

port = 3306
socket = /tmp/mysql.sock
添加下面一行
datadir = /var/lib/mysql/

[safe_mysqld]
err-log = /var/log/mysqld.log
pid-file = /var/lib/mysql/localhost.localdomain.pid
重新启动 mysql成功
/usr/local/mysql/var/db1.pid 这个文件名字貌似不能随便指定的
(我指定成了别的是不行的 ,这里的db1是你的hostname)


2、修改改selinux的 我改了 重新启动机器就行了,以下是SELINUX配置文件
[root@localhost selinux]# vi config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
#SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
然后重启计算机

[root@localhost ~]# /etc/init.d/mysql restart

Shutting down MySQL. [ OK ]

Starting MySQL.. [ OK ]

 


启动完成之后用ps -ef |grep mysql 命令查看是否启动

[root@localhost mysql-5.5.11]#/mysql –u root –p //client开关参照1.11一文



2 标准的mysql安装设置

2.1 设置root帐户的密码

[root@localhost mysql-5.5.11]#mysqladmin -u root password 'yourpassword'



2.2 删除本机匿名连接的空密码帐号

本机登录mysql

[root@localhost mysql-5.5.11]#mysql –u root -p


然后输入上面设置的密码,登录后在mysql的命令行中执行:


 

mysql>use mysql; //选择默认数据库mysql

mysql>update user set password=’root’ where user = '127.0.0.1';

mysql>delete from user where password="";//不允许root密码为空

mysql>flush privileges;

mysql>quit



容许root用户是远程登录

对于root账号,如果考虑安全应该新建其他账号用于远程登录,root账号可以不必开启远程登录。不过对于一般使用,没有太多安全需求,允许root用户远程登录可以方便管理,毕竟使用专用管理软件的图形界面在操作方面要方便的多。


3 实现MySQL远程连接的实际操作流程

3.1 mysql 数据库端设置

[root@localhost mysql-5.5.11]#/mysql –u root –p //进入数据库

mysql>use mysql

mysql>select user,password,host from user;

mysql>update user set host = '192.168.%' where user = '127.0.0.1';

mysql>grant all privileges on *.* to root@'%' identified by "root";//给以root@ip登录的远程连接赋予权限,能够连接数据库。远程无法连接的常见问题原因。


并把远程登录用户的密码设置为root

mysql> flush privileges;

mysql>quit



3.2 mysql Windows客户端

下载客户端

http://js.newhua.com/down/files/mysql-gui-tools-5.0-r17-win32.zip

mysql官方GUI

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值