.net mysql linux_Linux下安装mysql

最近服务器上要用到mysql,在查看mysql自带的INSTALL-SOURCE,和在网上查找了很多样的资料,经过一番痛苦的折腾,终于总结出个还算可以的教程,贴上来备忘。

1、下载MySQL免安装版软件,下载地址:http://dev.mysql.com/downloads,

这里我下载的是mysql-5.1.50-linux-i686-icc-glibc23.tar.gz

2、创建mysql组,建立mysql用户并加入到mysql组中。

(不同版本的Unix中,groupadd和useradd的语法可能会稍有不同。)

#groupadd mysql

#useradd -g mysql mysql

3、进入先前存放mysql压缩包文件的目录,我这里是/usr/mysql,将免安装版mysql解压缩,并在此目录下建立名为mysql的软链接。

建不建软链接,根据实际需要,这个不是必需的。本人在这里并没有建立软链接。

# cd /usr/mysql

# tar zxvf mysql-5.1.50-linux-i686-icc-glibc23.tar.gz

# ln -s mysql-5.1.50-linux-i686-icc-glibc23 mysql

4、接下来是第4步,网上很多资料包括官方示例里面都没有,但缺少这一步将导致后面的安装无法继续。上一步解压后,将多出一个mysql-5.1.50目录,进入该目录,使用configure 命令  我在这里指定了安装目录为 /usr/mysql

# cd mysql-5.1.50      //如果使用软链接,cd mysql即可

# ./configure --prefix=/usr/mysql

在这一步时,出现了错误:

configure: error: no acceptable C compiler found in $PATH

google了一下,说是没有安装gcc组件的原因,网上说下载gcc安装包,手工装上,这里用了自己的解决办法:

(在线安装gcc,输入以下命令即可,比较方便)

# yum -y install gcc

再次configure,又报出了错误:

checking for termcap functions library… configure: error: No curses/termcap library found

分析错误时,认为是缺少了,ncurses安装包,安装之:

# yum -y install ncurses

提示,发现该安装包已经是存在的,纠结了半天,终于找到原因,原来还要安装ncurses的开发包:

(先前试过 yum -install ncurses-devel,不知道为什么不行)

# yum -install ncurses ncurses-devel

再次configure,终于成功。

接下来make和make install:

# make

又报出错误:

./depcomp: line 571: exec: g++: not found

又是缺少了组件,再次安装:

# yum intall gcc-c++

之后make和make install正常,时间有点久,耐心点吧

5、添加MySQL配置文件。

设置一个选项文件,使用support-files目录中的一个作为模板。在这个目录中有4个模板文件,是根据不同机器的内存定制的。

# cp mysql/support-files/my-medium.cnf /etc/my.cnf

6、设定目录访问权限,用mysql_install_db创建MySQL授权表初始化,并设置mysql,root帐号访问权限。

# cd mysql-5.1.50        //到mysql压缩包的解压缩目录

# chown -R mysql .       //这里的mysql指的是用户 后面的.不能省略

# chgrp -R mysql .

//关键在这一步,很少能够一次成功,本人就没有成功。网上大多数都是同一文章转来转去,对此并没有说明。在这里备注一下:因为这里初始化数据库要用到下面的data目录,而data目录起初可能是不存在的,所以会导致失败。如果失败请按指定的路径创建data目录并确定权限没问题后重试,一般就可成功

# scripts/mysql_install_db –user=mysql

# chown -R root .

//这里的data目录可能会有所变化,像我在装的时候就没有data目录,而且默认的配置文件里指定的是var目录:/usr/mysql/var 但是var目录也不存在,需要手工创建。当然这个名称可以手工修改,只要与文件夹对应即可,手工创建时注意权限问题,不然会初始化数据库不成功,我就是在这卡了不少时间

# chown -R mysql data

注意:以上命令中的”.”符号不能少

7、运行mysql。

# bin/mysqld_safe –user=mysql

(我的bin目录是在/usr/mysql,configure时指定的,具体看你情况)

如果没有问题的话,应该会出现类似这样的提示:

100906 10:44:54 mysqld_safe Logging to ‘/usr/local/mysql/data/localhost.localdomain.err’.

100906 10:44:54 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data

注意:如果光标停留在提示下闪烁,其实已经启动成功了,关闭当前shell终端,重新开启一个shell终端即可

如果出现 mysql ended这样的语句,表示Mysql没有正常启动,你可以到log中查找问题,Log文件的通常在/etc/my.cnf中配置,大多数问题是权限设置不正确引起的。

至此,mysql安装启动成功。

8、使用mysql

安装完成后,可以用root用户登录,默认密码为空,直接进入即可:

# mysql -u root -p

该命令可能要到bin目录下执行才可以,那是因为还没有添加环境变量:

# vi /etc/profile

在profile文件中添加下面两行:

PATH=/usr/mysql/bin:$PATH

export PATH

然后wq保存,现在你就可以方便的使用mysql命令了。

为了安全,可以修改root用户密码:

# /usr/mysql/bin/mysqladmin -uroot password newpassword

如果要远程登录,别忘了把用户的host改成‘%’,并且确认防火墙已经开放3306端口

9、配置mysql为服务方式,自动启动

# cp  /usr/mysql/mysql-5.1.58/support-files/mysql.server /etc/rc.d/init.d/mysql

# chmod 700 /etc/rc.d/init.d/mysql

# chkconfig --add mysql

# chkconfig --level 3 mysql on

手动启动服务:

# service mysql start

手动停止服务:

# service mysql stop

手动重启服务:

# service mysql restart

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2012-03-08 16:47

浏览 1340

评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值