您的位置:首页 > 运维架构 > Linux

Centos成功安装mysql-5.5.37

2014-08-16 14:14 316 查看
摘自http://www.2cto.com/os/201404/296364.html(原文请关注)

这几天在centos下装mysql,这里记录一下安装的过程,方便以后查阅

Mysql5.5.37安装需要cmake,5.6版本开始都需要cmake来编译,5.5以后的版本应该也要装这个。

安装cmake

[plain] view plaincopyprint?01.[root@local ~]# wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz
02.[root@local ~]# tar xvf cmake-2.8.12.2.tar.gz

03.[root@local ~]# cd cmake-2.8.12.2

04.[root@local cmake-2.8.12.2]#./bootstrap

05.[root@local cmake-2.8.12.2]# make

06.[root@local cmake-2.8.12.2]# make install

[root@local ~]# wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz
[root@local ~]# tar xvf cmake-2.8.12.2.tar.gz

[root@local ~]# cd cmake-2.8.12.2

[root@local cmake-2.8.12.2]#./bootstrap

[root@local cmake-2.8.12.2]# make

[root@local cmake-2.8.12.2]# make install 安装mysql

[plain] view plaincopyprint?01.[root@local ~]# wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.37.tar.gz
02.[root@local ~]# tar xvf mysql-5.5.37.tar.gz

03.[root@local ~]# cd mysql-5.5.37

04.[root@local mysql-5.5.37]# cmake ./

[root@local ~]# wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.37.tar.gz
[root@local ~]# tar xvf mysql-5.5.37.tar.gz

[root@local ~]# cd mysql-5.5.37

[root@local mysql-5.5.37]# cmake ./

可能还会报这个错,没有就跳过

[plain] view plaincopyprint?01.CMake Error at cmake/readline.cmake:83(MESSAGE):

02.Curses library not found. Pleaseinstall appropriate package,

03.remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name islibncurses5-dev, on Redhat and derivates it is ncurses-devel.

04.Call Stack (most recent call first):

05. cmake/readline.cmake:127 (FIND_CURSES)

06. cmake/readline.cmake:217 (MYSQL_USE_BUNDLED_LIBEDIT)

07. CMakeLists.txt:355 (MYSQL_CHECK_READLINE

08.-- Configuring incomplete, errors occurred!

09.See also "/root/my/mysql-5.5.37/CMakeFiles/CMakeOutput.log".

10.See also"/root/my/mysql-5.5.37/CMakeFiles/CMakeError.log".

CMake Error at cmake/readline.cmake:83(MESSAGE):

Curses library not found. Pleaseinstall appropriate package,

remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name islibncurses5-dev, on Redhat and derivates it is ncurses-devel.

Call Stack (most recent call first):

cmake/readline.cmake:127 (FIND_CURSES)

cmake/readline.cmake:217 (MYSQL_USE_BUNDLED_LIBEDIT)

CMakeLists.txt:355 (MYSQL_CHECK_READLINE

-- Configuring incomplete, errors occurred!

See also "/root/my/mysql-5.5.37/CMakeFiles/CMakeOutput.log".

See also"/root/my/mysql-5.5.37/CMakeFiles/CMakeError.log".

说明centos系统没有ncurses-devel

[plain] view plaincopyprint?01.[root@local ~]# wgethttp://invisible-island.net/datafiles/release/ncurses.tar.gz

02.[root@local ~]# cd ncurses-5.9

03.[root@local ncurses-5.9]#./configure

04.[root@local ncurses-5.9]# make

05.[root@local ncurses-5.9]# make install

[root@local ~]# wgethttp://invisible-island.net/datafiles/release/ncurses.tar.gz

[root@local ~]# cd ncurses-5.9

[root@local ncurses-5.9]#./configure

[root@local ncurses-5.9]# make

[root@local ncurses-5.9]# make install

再删除刚才编译生成的 CMakeCache.txt 文件,否则无法进行下一步

[plain] view plaincopyprint?01.[root@local mysql-5.5.37]# rm -f CMakeCache.txt

[root@local mysql-5.5.37]# rm -f CMakeCache.txt

继续编译mysql

[plain] view plaincopyprint?01.[root@local ~]# cmake ./

02.[root@local ~]# make

03.[root@local ~]# make install

[root@local ~]# cmake ./

[root@local ~]# make

[root@local ~]# make install

这样,mysql默认将成功安装到/usr/local/mysql

创建mysql用户组

[plain] view plaincopyprint?01.[root@local ~]# groupadd mysql

02.[root@local ~]# useradd –r –g mysql mysql

03.[root@local ~]# chown –R mysql.mysql /usr/local/mysql 或者

[root@local ~]# groupadd mysql

[root@local ~]# useradd –r –g mysql mysql

[root@local ~]# chown mysql.mysql /usr/local/mysql

启动mysql

[plain] view plaincopyprint?01.[root@local ~]# /usr/local/mysql/bin/mysqld_safe --user=mysql

[root@local ~]# /usr/local/mysql/bin/mysqld_safe --user=mysql

这里可能会发生错误,没有就跳过:

[plain] view plaincopyprint?01.FATAL ERROR: Could not find./bin/my_print_defaults

02.If you compiled from source, you need torun 'make install' to

03.copy the software into the correct locationready for operation.

04.If you are using a binary release, you musteither be at the top

05.level of the extracted archive, or pass the --basedir option

06.pointing to that location.

FATAL ERROR: Could not find./bin/my_print_defaults

If you compiled from source, you need torun 'make install' to

copy the software into the correct locationready for operation.

If you are using a binary release, you musteither be at the top

level of the extracted archive, or pass the --basedir option

pointing to that location.

解决方法:

[plain] view plaincopyprint?01.[root@local ~]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

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

再启动mysql

[plain] view plaincopyprint?01.[root@local ~]# /usr/local/mysql/bin/mysqld_safe --user=mysql

[root@local ~]# /usr/local/mysql/bin/mysqld_safe --user=mysql

注册mysql服务,开机自动启动

1.设置mysql配置文件到/etc目录

[plain] view plaincopyprint?01.[root@local ~]# cp /usr/local/mysql/support-files/my-medium.cnf/etc/my.cnf

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

2.设置mysql开机自启

[plain] view plaincopyprint?01.[root@local ~]# cp/usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

02.[root@local ~]# chmod +x /etc/init.d/mysql

03.[root@local ~]# /sbin/chkconfig --add mysql

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

[root@local ~]# chmod +x /etc/init.d/mysql

[root@local ~]# /sbin/chkconfig --add mysql

3.启动mysql服务

可以添加系统变量:export PATH=/usr/local/mysql/bin/:$PATH

[plain] view plaincopyprint?01.[root@local ~]# service mysql start

如果出现错误Starting MySQL.. ERROR! The server quit without updating PID file (/usr/local/mysql/data/iZ23i33p2ccZ.pid).等

则可查看日志cat /usr/local/mysql/data/iZ23i33p2ccZ.err

执行/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data自动刷新重启下

我的解决方法是:

可能是/usr/local/mysql/data/rekfan.pid文件没有写的权限

解决方法 :给予权限,执行 “chown -R
mysql:mysql /var/data” “chmod
-R 755 /usr/local/mysql/data” 然后重新启动mysqld!

参考网址 http://blog.csdn.net/zalion/article/details/9274263
测试mysql是否安装成功

[plain] view plaincopyprint?01.[root@local ~]# /usr/local/mysql/bin/mysql -u root -p

02.Enter password:

03.Welcome to the MySQL monitor. Commands end with ; or \g.

04.Your MySQL connection id is 1

05.Server version: 5.5.37 Source distribution

06.

07.Copyright (c) 2000, 2014,
Oracle and/or itsaffiliates. All rights reserved.

08.

09.Oracle is a registered trademark of OracleCorporation and/or its

10.affiliates. Other names may be trademarksof their respective

11.owners.

12.

13.Type 'help;' or '\h' for help. Type '\c' toclear the current input statement.

14.

15.mysql> show databases;

16.+--------------------+

17.| Database |

18.+--------------------+

19.| information_schema |

20.| mysql |

21.| performance_schema |

22.| test |

23.+--------------------+

24.4 rows in set (0.03 sec)

如果遇到错误

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

我的解决方法:

创建符号连接:

为mysql.sock增加软连接(相当于windows中的快捷方式)。

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

参考网址: http://blog.csdn.net/wyzxg/article/details/4720041
2015-1-24添加如下内容,安装完成后

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

[root@localhost mysql]# 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('123456') where User='root'; //设置root用户密码

mysql> select Host,User,Password from user where User='root';

mysql> flush privileges;

mysql> exit

如果不行则可以尝试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: