linux下安装Mysql数据库

     由于安装mysql数据库历程比价曲折,简单记录一下。声明:linux为centOS

一、在线安装Mysql

      1、查看是否安装了mysql

          rpm -qa | grep mysql 或者 rpm -qa | grep MySQL

         如:[shaohan@localhost Desktop]$ rpm -qa | grep MySQL
                 MySQL-shared-5.5.32-1.linux2.6.i386
                 MySQL-server-5.5.32-1.linux2.6.i386
                 MySQL-client-5.5.32-1.linux2.6.i386
                 MySQL-devel-5.5.32-1.linux2.6.i386
                 MySQL-shared-compat-5.5.32-1.linux2.6.i386

     2、如果有安装,就彻底删除

           yum -y remove MySQL-*.....

           还要彻底卸载:rm -rf /var/lib/mysql

   3、安装

         yum -y install mysql-server

   4、启动

       /etc/rc.d/init.d/mysqld start

   5、设置mysql服务开机自启动

  chkconfig mysqld on


---------------------------------------------------------------

手动安装

1、安装文件准备

MySQL-server-5.5.28-1.rhel5.i386.rpm

           MySQL-client-5.5.28-1.rhel5.i386.rpm

           MySQL-devel-5.5.28-1.rhel5.i386.rpm

去官网下载吧。

2、查看系统有无安装mysql

 

[root@localhost ~]# rpm -qa | grep MySQL

          MySQL-server-5.5.28-1.rhel5.i386.rpm

          MySQL-client-5.5.28-1.rhel5.i386.rpm

          MySQL-devel-5.5.28-1.rhel5.i386.rpm

说明已安装;
 
3、停止mysql服务
service mysql stop
 
4、卸载MySQL
       yum -y remove   MySQL-server-5.5.28-1.rhel5.i386.rpm        yum -y remove   MySQL-client-5.5.28-1.rhel5.i386.rpm
       yum -y remove   MySQL-devel-5.5.28-1.rhel5.i386.rpm
5、删除相关目录
默认安装一般会在:
/usr/share/mysql
/var/lib/mysql
删除mysql文件夹即可;
 
6、安装
rpm -ivh MySQL-server-5.5.28-1.rhel5.i386.rpm      MySQL-client-5.5.28-1.rhel5.i386.rpm    MySQL-devel-5.5.28-1.rhel5.i386.rpm
成功安装服务器端与客户端
 
7、启动服务
service mysql start
设置开机自启动: chkconfig mysql on
 
8、登录访问
首次安装时,默认密码为空,可以使用如下命令修改root密码
mysqladmin -u root password mypassword
mypassword 是新设定密码;
然后再次登录
mysql -u root –p
 
rpm包安装的MySQL是不会安装/etc/my.cnf文件的,解决方法,只需要复制/usr/share/mysql目录下的my-huge.cnf 文件到/etc目录,并改名为my.cnf即可
cp /usr/share/mysql/my-huge.cnf /etc/my.cnf
 
9、设置远程

//赋予任何主机访问数据的权限 mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;

//使修改生效 mysql>FLUSH PRIVILEGES;

如果依然不能远程访问的话,那就很可能防火墙的原因了,可以在防火墙中开启3306端口或者干脆关掉防火墙。

关闭防火墙:service iptables stop

我在设置密码及远程访问时遇到些问题,修改密码了,也设置远程访问权限了,发现mysql无法远程;

折腾了半天发现,使用新修改的密码不能访问,使用空密码可以。为什么呢?进入mysql数据库查看了user表:

mysql> use mysql Database changed mysql> select host,user,password from user; +-----------------------+--------+-------------------------------------------+ | host                  | user   | password                                  | +-----------------------+--------+-------------------------------------------+ | localhost             | root   | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | localhost.localdomain | root   |                                           | | 127.0.0.1             | root   |                                           | | localhost             |        |                                           | | localhost.localdomain |        |                                           | | %                     | root   |                                           | +-----------------------+--------+-------------------------------------------+ 7 rows in set (0.00 sec) 不知道为什么,只有host为localhost user为root的用户,密码是改过的。其它密码仍为空,个人猜想,远程登录时应该使用的是host为%的用户。

直接update密码为“*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 ”,修改成功,再登录,仍然无法使用新密码远程登录 。不知道这样直接修改与用命令mysql -u root 旧密码 新密码有什么区别

也不知道如何使用命令mysql -uroot -p命令修改host为%的密码;

后想到即然使用root用户,密码为空可远程登录,就在客户端里改吧。

我用的是Navicat,使用root 空密码登录后,点击菜单栏中tools->user manager->edit user

修改其它root用户密码为新密码:123456;

mysql> use mysql Database changed mysql> select host,user,password from user; +-----------------------+--------+-------------------------------------------+ | host                  | user   | password                                  | +-----------------------+--------+-------------------------------------------+ | localhost             | root   | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | localhost.localdomain | root   | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | 127.0.0.1             | root   | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | localhost             |        |                                           | | localhost.localdomain |        |                                           | | %                     | root   | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | %                     | lychee |                                           | +-----------------------+--------+-------------------------------------------+ 7 rows in set (0.00 sec)

重新使用Navicat登录 ,root 123456 ok,登录成功。


Linux环境下 php+mysql远程连接数据库,开启3306端口发布:付亚辉 | 发布时间: 2010年11月26日这个问题在php100问了好久,也没有得到答案(或许他们觉得简单,没法回答的,但是对新手来说,摸索是一个“漫长”的过程,特别像我这种在公司里边学习边用)。后来自己不断摸索终于找到了问题的所在,因为工作比较忙,今天终于有时间把这个详细解决过程写出来了,希望对你有帮忙!有两种方法一是:改表法(这个方法我没有试)因为在linux环境下,默认是关闭3306端口远程连接的,需要开启,这个后面说!可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库 里的 "user"(远程数据库的名称) 表里的 "host" 项,从"localhost"改称"%"     mysql -u root -pvmwaremysql>use mysql;     mysql>update user set host = ’%’ where user = ’root’;     mysql>select host, user from user;   二是:授权法(我用的是这个方法)例如,你想myuser(远程连接的用户名)使用mypassword(远程连接的密码)从任何主机连接到mysql服务器的话。   GRANT ALL PRIVILEGES ON *.* TO ’myuser’@’%’IDENTIFIED BY ’mypassword’ WI     TH GRANT OPTION;     如果你想允许用户myuser(远程连接的用户名)从ip为192.168.1.6(你测试电脑上的IP)的主机连接到mysql服务器,并使用 mypassword(远程连接的密码)作为密码     GRANT ALL PRIVILEGES ON *.* TO ’myuser’@’192.168.1.6’IDENTIFIED BY     ’mypassword’ WITH GRANT OPTION;    开始用的第一个方法,刚开始发现不行,在网上查了一下,少执行一个语句 mysql>FLUSH RIVILEGES使修改生效,就可以了。     方法是在安装mysql的机器上运行:     1、d:\mysql\bin\>mysql -h localhost -u root   //这样应该可以进入MySQL服务器     2、mysql>GRANT ALL PRIVILEGES ON *.* TO ’root’@’%’WITH GRANT OPTION     //赋予任何主机访问数据的权限     3、mysql>FLUSH PRIVILEGES   //修改生效   4、mysql>EXIT   //退出MySQL服务器  这个时候还没结束呢,一般的服务器上安装的都有防火墙之类的东西,也需要我们开启3306端口才能用了在linux下要开启防火墙 打开3306 端口,编辑这个文件vim /etc/sysconfig/iptables输入-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT保存后在控制台输入 /etc/rc.d/init.d/iptables restart  重启防火墙,记得一定要重启哦,我就是因为没有重启防火墙导致一直连接不上,最后终于找到答案了

有什么不明白的地方可以留言或者加我qq:493908654,欢迎沟通交流!

 

快速让MySQL数据库服务器支持远程连接

来源:CSDN博客

 

在CentOS上安装MySQL数据库服务器后,系统出于安全性考虑,缺省不支持用户通过非本机连接上数据库服务器,如果想让用户通过另外一台机器连接上数据库服务器必须手动进行修改:

1、在控制台执行 mysql -u root -p mysql,系统提示输入数据库root用户的密码,输入完成后即进入mysql控制台,这个命令的第一个mysql是执行命令,第二个mysql是系统数据名称,不一样的。

2、在mysql控制台执行 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyPassword' WITH GRANT OPTION;

3、在mysql控制台执行命令中的 'root'@'%' 可以这样理解: root是用户名,%是主机名或IP地址,这里的%代表任意主机或IP地址,你也可替换成任意其它用户名或指定唯一的IP地址;'MyPassword'是给授权用户指定的登录数据库的密码;另外需要说明一点的是我这里的都是授权所有权限,可以指定部分权限

4、不放心的话可以在mysql控制台执行 select host, user from user; 检查一下用户表里的内容

 

打开MySQL远程访问权限

1.以 root 帐户登陆 MySQL

MySQL -uroot -p123456

注:123456 为 root 用户的密码。

2.创建远程登陆用户并授权

grant all PRIVILEGES on discuz.* to ted@'123.123.123.123' identified by '123456';

注:上面的语句表示将 discuz 数据库的所有权限授权给 ted 这个用户,允许 ted 用户在 123.123.123.123 这个 IP 进行远程登陆,并设置 ted 用户的密码为 123456 。

----------------

改表法

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

mysql -u root -p

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;



         

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
08-10
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值