bereyi的gravatar头像
bereyi2018-01-04 08:56:01
Linux安装MYSQL5.1 及遇到的问题 , 解决方法
  • 编译安装

>gruopadd mysql #创建mysql组

>useradd -g mysql mysql创建用户mysql并将其添加到mysql组中,这个用户主要是作为mysql服务运行的用户

>tar –xzvf mysql-5.1.56.tar.gz #对mysql tar包解压缩

>cd myql-5.1.56

>./configure –prefix=/usr/local/mysql #制定mysql的安装目录

>make #编译源代码

>make install #安装

>cp support-files/my-medium.cnf /etc/my.cnf #复制配置文件模板

>cd /usr/local/mysql

>bin/mysql_install_db –user=mysql #初始化安装mysql数据库

>chown –R mysql . #修改当前目录属主为mysql

>chown –R mysql var #修改当前目录的var目录属组为mysql

>chgrp –R mysql . 修改当前目录属组为mysql

>bin/mysqld_safe –user=mysql & #使用用户mysql安全启动mysql程序并放到后台执行

 

  • 更改MYSQL的root密码

>/usr/local/mysql/bin/mysqladmin –u root password 123456

#为进入mysql数据库添加一个用户以及密码,加入用户为”root”,密码为123456

 

  • 测试MYSQL是否可用

>/usr/local/mysql/bin/mysql –u root –p #使用用户root连接mysql

Enter password:123456 #输入上一步显示的密码”123456”

 

以下4和5可以不用操作

  • 设置MYSQL开机自启动

在/etc/rc.d/rc.local添加

/usr/local/mysql/bin/mysqld_safe –user=mysql &

到此安装就结束了!

 

  • 配置环境变量

将以下信息添加到 mysql 用户下的.base_profile 文件中

#mysql items begin

export MYSQL_HOME=MySQL 安装目录

export PATH=$MYSQL_HOME/bin:$PATH

export LD_LIBRARY_PATH=$MYSQL_HOME/lib:$LD_LIBRARY_PATH

export LIBPATH=$LD_LIBRARY_PATH:$LIBPATH

#mysql items end

 

安装过程可能出现的问题:

1、make[1]: Leaving directory `/usr/local/src/mysql-5.0.41'

安装mysql提示: g++: not foundmake[2]: *** [my_new.o] Error 127make[2]: Leaving directory `/usr/local/src/mysql-5.0.41/mysys'make[1]: *** [all-recursive] Error 1make[1]: Leaving directory `/usr/local/src/mysql-5.0.41'make: *** [all] Error 2 解决办法:安装gcc-c++ 安装完成之后再次编译make可能会出现如下错误:../include/my_global.h:909: error: redeclaration of C++ built-in type `bool'make[2]: *** [my_new.o] Error 1make[2]: Leaving directory `/home/tools/mysql-5.0.22/mysys'make[1]: *** [all-recursive] Error 1make[1]: Leaving directory `/home/tools/mysql-5.0.22'make: *** [all] Error 2是因为gcc-c++是在configure之后安装的,此时只需重新configure后再编译make就可以了。

2、mysql grant all mysql用户授权(安装完毕以后一定要进行用户授权)

grant all privileges on *.* to root@"%" identified by '123456' with grant option;

让%(所有ip的)用户拥有访问所有库和表的权限。用户名为root 密码为123456;.

flush privileges;

刷新权限,不用重启立即生效

PS: 可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

3、Linux下mysql端口不能远程访问的问题(如java程序连接)防火墙设置

修改防火墙配置文件:

vi  /etc/sysconfig/iptables

增加下面一行:

-A RH-Firewall-1-INPUT -m state –state NEW -m  tcp -p tcp –dport 3306 -j ACCEPT

service iptables save

service  iptables restart

这时就可以从其他机器访问Mysql了。

开通3306 端口的行必须在icmp-host-prohibited前


打赏

分享到:

最近浏览
HBHDFXQ1月19日
最代码贡献等级说明
攻克己身1月16日
最代码贡献等级说明
夏虫123zzc1月11日
最代码贡献等级说明
jw21fang1月10日
暂无贡献等级
Jenson05031月9日
最代码贡献等级说明
Alkane1月9日
暂无贡献等级
筱进GG LV31月9日
最代码贡献等级说明
暂无贡献等级
bianyuanze1月8日
最代码贡献等级说明
一条弧1月8日
最代码贡献等级说明
sunjiyun261月8日
最代码贡献等级说明
reseten1月5日
暂无贡献等级
ftc13141月5日
最代码贡献等级说明
luo9009031月5日
最代码贡献等级说明
sowang1月5日
最代码贡献等级说明
liyongkui1月5日
最代码贡献等级说明
mySong1月4日
最代码贡献等级说明
ES大兵1月4日
最代码贡献等级说明
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友