1.下载MySQL 下载地址:http://www.linuxidc.com/Linux/2012-03/57270.htm我下载的版本:mysql-5.5.22.tar.gz 2.安装之前先卸载C
1.下载MySQL
下载地址:
我下载的版本:mysql-5.5.22.tar.gz
2.安装之前先卸载CentOS自带的MySQL
[root@localhost ~]# yum remove mysql
3.编译安装Cmake
下载cmake源码包:
从共享目录移至usr目录
[root@localhost ~]# mv /mnt/hgfs/Share-CentOS/cmake-2.8.4.tar.gz /usr/cmake-2.8.4.tar.gz
[root@localhost ~]# cd /usr
解压并安装cmake
[root@localhost usr]# tar xzvf cmake-2.8.4.tar.gz
[root@localhost usr]# 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
---------------------------------------------
[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
4.正式开始安装MySQL
添加MySQL用户和用户组
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -g mysql mysql
MySQL源码包从共享文件夹移至/usr并解压
[root@localhost ~]mv /mnt/hgfs/Share-CentOS/mysql-5.5.22.tar.gz /usr/mysql-5.5.22.tar.gz
[root@localhost usr]# tar xzvf mysql-5.5.22.tar.gz
[root@localhost usr]# cd mysql-5.5.22
Cmake运行
[root@localhost mysql-5.5.22]# cmake .
开始编译安装
[root@localhost mysql-5.5.22]# make && make install
进入安装目录,将程序二进制的所有权改为root,数据目录的说有权改为mysql用户,更新授权表
[root@localhost mysql-5.5.22]# cd /usr/local/mysql/
[root@localhost mysql]# chown -R root .
[root@localhost mysql]# chown -R mysql .
[root@localhost mysql]# chgrp -R mysql .
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
安全启动MySQL(默认密码为空)
[root@localhost mysql]#./bin/mysqld_safe –-user=mysql&
报错:
090408 21:19:24 mysqld_safe Logging to '/var/log/mysqld.log'.
090408 21:19:24 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
090408 21:19:24 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
原因:
打开/var/log/mysqld.log文件得到Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 2)
Can't start server: can't create PID file: No such file or directory
解决方法:
进入/var/run目录,发现没有mysqld目录,建立mysqld目录,进入该目录再建立mysqld.pid文件,修改文件属性 chown -R mysql mysqld .从而解决该问题
连接本机MySQL
[root@localhost mysql]#mysql –u root –p
提示输入password,默认为空,按Enter即可
断开连接
mysql>exit;
关闭MySQL
[root@localhost mysql]# ./bin/mysqladmin -u root shutdown –p
报错:
bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!
原因:
进入/var/lib/mysql目录,发现mysql.sock文件
解决方法:
建立连接 ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock 解决该问题
方便调用,为mysql设置一个软链接
[root@localhost ~]# ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
为root账户设置密码
[root@localhost ~]# cd /usr/local/mysql/bin
[root@localhost mysql]# ./bin/mysqladmin -u root –p password root
Enter Password:root
设置选项文件,,将配置文件拷贝到/etc下
[root@localhost mysql]# cp support-files/my-medium.cnf /etc/mysql.cnf
设置开机自启动
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql
[root@localhost mysql]# chmod +x /etc/init.d/mysql
通过服务来启动和关闭Mysql
[root@localhost ~]# service mysql start
[root@localhost ~]# service mysql shutdown
报错:启动mysql报错
Starting MySQL…The server quit without updating PID file (/usr/local/mysql/data/CentOS.pid). [失败]
解决方法:
在 my.cnf 中
#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/CentOS.pid