CentOS源码编译安装Mysql5.5
安装Mysql5.5之前先卸载CentOS自带的Mysql5.0。
[root@localhost ~]# yum remove mysql
编译安装cmake
下载cmake源码包cmake-2.8.4.tar.gz,mv到/usr/local/src目录下
[root@localhost ~]# cd /usr/local/src/ [root@localhost src]# tar xzvf cmake-2.8.4.tar.gz [root@localhost src]# 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
开始正式安装Mysql
添加mysql用户和用户组
[root@localhost ~]# groupadd mysql [root@localhost ~]# useradd -g mysql mysql
下载mysql的源码包mysql-5.5.11.tar.gz到/usr/local/src下,解压
[root@localhost ~]# cd /usr/local/src/ [root@localhost src]# tar xzvf mysql-5.5.11.tar.gz [root@localhost src]# cd mysql-5.5.11
cmake运行
[root@localhost mysql-5.5.11]# cmake .
报错:
-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH) CMake Error at cmake/readline.cmake:82 (MESSAGE): Curses library not found. Please install appropriate package, remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel. Call Stack (most recent call first): cmake/readline.cmake:126 (FIND_CURSES) cmake/readline.cmake:216 (MYSQL_USE_BUNDLED_LIBEDIT) CMakeLists.txt:250 (MYSQL_CHECK_READLINE) -- Configuring incomplete, errors occurred!
缺少Curses包,解决办法:
remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev,
on Redhat and derivates it is ncurses-devel.很容易看懂,不解释了...
在CentOS下需要安装ncurses-devel
[root@localhost mysql-5.5.11]# yum install ncurses-devel
重新cmake运行
[root@localhost mysql-5.5.11]# cmake .
还是有个警告
Warning: Bison executable not found in PATH
有一个警告,也解决了它,缺少Bison就安装一下
[root@localhost mysql-5.5.11]# yum install bison
再次运行,没有报错
[root@localhost mysql-5.5.11]# cmake .
在编译安装前,可以设置安装的配置选项
[root@localhost mysql-5.5.11]# ./configure --help
根据帮助信息选择自己需要设置的选项,当然也可以跳过这步,按默认设置
开始编译安装,时间有点稍长,可以泡杯咖啡转悠一下...
[root@localhost mysql-5.5.11]# make && make install
完成编译安装
进入安装目录,将程序二进制的所有权改为root,数据目录的说有权改为mysql用户,更新授权表
[root@localhost mysql-5.5.11]# 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 &
关闭mysql
[root@localhost mysql]# ./bin/mysqladmin -u root shutdown -p
默认密码为空
方便调用,为mysql设置一个软链接
[root@localhost ~]# ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
有3种方法为root账户设置密码:
使用SET PASSWORD语句
[root@localhost ~]# mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpwd'); mysql> SET PASSWORD FOR 'root'@'host_name' = PASSWORD('newpwd')
使用mysqladmin命令行程序
[root@localhost ~]# mysqladmin -u root password "newpwd" [root@localhost ~]# mysqladmin -u root -h host_name password "newpwd"
使用UPDATE语句
[root@localhost ~]# mysql -u root
mysql> UPDATE mysql.user SET Password = PASSWORD('newpwd') -> WHERE User = 'root'; mysql> FLUSH PRIVILEGES;
其他设置处理:
设置选项文件,将配置文件拷贝到/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
基本上的安装就是这样了......