在CentOS下使用源代码安装MySQL

几经波折,可喜可贺,记录如下:

 

 

1:如果你未安装ncurses包,那么:

去下载一个ncurses-5.6.tar.gz并安装:

输入如下命令:

[root@localhost root]#wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.6.tar.gz  //下载包

[root@localhost root]#tar zxvf ncurses-5.6.tar.gz  //解压

[root@localhost root]#cd ncurses-5.6

[root@localhost ncurses-5.6]./configure --prefix=/usr --with-shared --without-debug//预编译

[root@localhost ncurses-5.6]#Make//生成可执行文件

[root@localhost ncurses-5.6]#make install clean//清空执行安装文件是所产生的垃圾文件和缓存...

 

2:下载MySQL-*.*.tar.gz,解压

        参考网站:MySQL-*.*.tar.gzhttp://download.mysql.cn/src/2006/0710/5544.html

       [root@localhost root]# cd /usr/local/mysql/software

[root@localhost software]# ls

mysql-4.0.16.tar.gz

      [root@localhost software]#tar zxvf mysql-4.0.16.tar.gz

3mysql编译和安装:

在这个地方值得注意的是,我们要把CentOS mysql安装到我们指定的目录中,为了系统和安全和优化,建议把自己用源码包安装的服务器类软件都放在//usr/local/mysql 目录里。所以在这里,我们就要把mysql-4.0.16也安装到//usr/local/mysql/mysql这个目录中;

[root@localhost software]#cd

[root@localhost software]# cd mysql-4.0.16

[root@localhost mysql-4.0.16]#

./configure --prefix=//usr/local/mysql/mysql --with-mysqld-user=beinan --with-extra-charsets=all --with-unix-socket-path=//usr/local/mysql/mysql/var/mysql.sock --with-named-curses-libs=/usr/lib/libncursesw.so.5/这句很重要

 

 []关于configure的选项的一点说明:

 

prefix=//usr/local/mysql/mysql mysql-4.0.16指定安装到//usr/local/mysql/mysql目录中;

with-extra-charsets=all 对多语言的支持;

 

with-unix-socket-path=//usr/local/mysql/mysql/var/mysql.sock 这个是指定mysql服务器启动后,联机套接字文件所处的位置和文件名,也就是说,如果CentOS mysql服务器成功启动后,就能在//usr/local/mysql/mysql/var目录中看到mysql.sock文件。如果看不到,肯定是CentOS mysql启动不了。删去这句的话则默认将mysql_sock安装在//tmp目录下

 

--with-named-curses-libs=/usr/lib/libncursesw.so.5是为了让mysql能够识别出路径

 

with-mysqld-user=beinan 这个是让mysql服务器也能让系统中普通用户beinan也能启动mysql服务器。

[root@localhost mysql-4.0.16]#make

[root@localhost mysql-4.0.16]#make install

这样就CentOS mysql安装完了

 

如果你没有安装ncurses包或者没有加上--with-named-curses-libs=/usr/lib/libncursesw.so.5那么在执行第3步的时候可能会产生这样的错误提示:checking for termcap functions library… configure: error: No curses/termcap library found

 

4mysql配置

一般的情况下CentOS mysql要找配制文件my.cnf,位置在/etc目录下,所以我们得把文件my.cnf文件放到/etc/目录下。让CentOS mysql服务器启动时能找到它。我们安装好CentOS mysql后,配制文件应该在//usr/local/mysql/mysql/share/mysql目录中,配制文件有几个,比如my-huge.cnf my-medium.cnf my-large.cnf my-small.cnf,不同的流量的网站和不同配制的服务器环境,当然需要有不同的配制文件了。一般的情况下,my-medium.cnf这个配制文件就能满足我们的大多需要;

 

进入/usr/local/mysql这个目录,看一下是不是已经安装好了呢??

[root@localhost mysql-4.0.16]# cd //usr/local/mysql/mysql/

[root@localhost mysql]# ls

bin include info lib libexec man mysql-test share sql-bench

我们把//usr/local/mysql/mysql/share/mysql这个目录下的my-medium.cnf,复制为my.cnf/etc目录下。

[root@localhost mysql]# cp //usr/local/mysql/mysql/share/mysql/my-medium.cnf /etc/my.cnf

 

做了这些工作以后,还得创造CentOS mysql授权表,否则数据库也是启动不了。mysql_install_db,这个命令的用途就是做这个的。CentOS mysql安装的命令都安装到了//usr/local/mysql/mysql/bin这个目录中。

[root@localhost mysql]#//usr/local/mysql/mysql/bin/mysql_install_db

运行mysql_install_db命令过后,我们查看//usr/local/mysql/mysql就会发现,有个var的目录。这个目录,就是用来装所有数据库的位置,比如我们创建了linuxsir的数据库后,就在在//usr/local/mysql/mysql/var目录中有linuxsir的目录。这回应该明白了吧。

 

5:启动CentOS mysql服务器

CentOS mysql服务器启动,应该是//usr/local/mysql/mysql/share/mysql目录中的 mysql.server

启动方法是:

[root@localhost mysql]# //usr/local/mysql/mysql/share/mysql/mysql.server start

如果不能启动请运行/usr/local/mysql/bin/mysqld_safe --user=root 就能够启动了!!

接着输入/usr/local/mysql/mysql/share/mysql/mysql.server start即可成功启动

我们把密码设置为123456 /usr/local/mysql/bin/mysqladmin -u root password 123456

如果没有返回错误说明正确了。

6:进入数据库进行管理

接着输入/usr/local/mysql/bin/mysql -u root -p就可以操作数据库了。

 

 参考网址:http://blog.sina.com.cn/s/blog_5208a7520100n4in.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值