1.说明:

  安装MySQL主要有两种方法:一种是通过源码自行编译安装,这种适合高级用户定制MySQL的特性,这里不做说明;另一种是通过编译过的二进制文件进行安装。二进制文件安装的方法又分为两种:一种是不针对特定平台的通用安装方法,使用的二进制文件是后缀为.tar.gz的压缩文件;第二种是使用RPM或其他包进行安装,这种安装进程会自动完成系统的相关配置,所以比较方便。这里仅说明通过不针对特定平台的通用安装二进制文件安装方式。

2.下载安装包:

  官方下载地址:

  http://dev.mysql.com/downloads/mysql/#downloads

  或镜像文件下载:

  http://dev.mysql.com/downloads/mirrors.html

3.  下载文件(根据操作系统选择相应的发布版本):

  mysql-5.5.49-linux2.6-i686.tar.gz

4.  安装步骤

  a.  检查是否已安装,grep的-i选项表示匹配时忽略大小写 

    [root@localhost JavaEE]#rpm -qa|grep -i mysql

    mysql-libs-5.1.-.el6.x86_64

    *可见已经安装了库文件,应该先卸载,不然会出现覆盖错误。注意卸:载时使用了--nodeps选项,忽略了依赖关系:

    [root@localhost JavaEE]#rpm -e mysql-libs-5.1.-.el6.x86_64 --nodeps

  b.   添加mysql组和mysql用户,用于设置mysql安装目录文件所有者和所属组。 

    [root@localhost JavaEE]#groupadd mysql

    [root@localhost JavaEE]#useradd -r -g mysql mysql 

    * useradd -r参数表示mysql用户是系统用户,不可用于登录系统,-g是将用户mysql添加到mysql组中。

  c.  将二进制文件解压到指定的安装目录,我们这里指定为/usr/local

    [root@localhost ~]# cd/usr/local/

    [root@localhost local]#tar zxvf /soft/mysql-5.5.-linux2.-x86_64.tar.gz(解包并解压)

    *解压后在/usr/local/生成了解压后的文件夹mysql-5.5.29-linux2.6-x86_64,这名字太长,我们为它建立一个符号链接mysql,方便输入。

     [root@localhost local]#ln -s mysql-5.5.-linux2.-x86_64 mysql

  d.   /usr/local/mysql/下的目录结构

Directory

Contents of Directory

bin

Client programs and the mysqld server

data

Log files, databases

docs

Manual in Info format

man

Unix manual pages

include

Include (header) files

lib

Libraries

scripts

mysql_install_db

share

Miscellaneous support files, including error messages, sample configuration files, SQL for database installation

sql-bench

Benchmarks

  e.  进入mysql文件夹,也就是mysql所在的目录,并更改所属的组和用户。 

    [root@localhost local]#cd mysql

    [root@localhost mysql]#chown -R mysql .

    [root@localhost mysql]#chgrp -R mysql .

  f.   执行mysql_install_db脚本,对mysql中的data目录进行初始化并创建一些系统表格。注意mysql服务进程mysqld运行时会访问data目录,所以必须由启动mysqld进程的用户(就是我们之前设置的mysql用户)执行这个脚本,或者用root执行,但是加上参数--user=mysql。

    [root@root mysql]scripts/mysql_install_db --user=mysql

    *如果mysql的安装目录(解压目录)不是/usr/local/mysql,那么还必须指定目录参数,如

    [root@root mysql]scripts/mysql_install_db --user=mysql \ --basedir=/opt/mysql/mysql \ --datadir=/opt/mysql/mysql/data

    *mysql_install_db参考:http://dev.mysql.com/doc/refman/5.5/en/mysql-install-db.html#option_mysql_install_db_basedir

    *将mysql/目录下除了data/目录的所有文件,改回root用户所有,mysql用户只需作为mysql/data/目录下所有文件的所有者。

    [root@root mysql]chown -R root .

    [root@root mysql]chown -R mysql data

  g.   复制配置文件

    [root@root mysql] cp support-files/my-medium.cnf /etc/my.cnf

  h.  将mysqld服务加入开机自启动项。

    *首先需要将support-files/mysql.server服务脚本复制到/etc/init.d/,并重命名为mysqld。 

    [root@root mysql]  cp support-files/mysql.server /etc/init.d/mysqld(使用cp命令同时能重命名)

    *通过chkconfig命令将mysqld服务加入到自启动服务项中。

    [root@root mysql]#chkconfig --add mysqld

    *注意服务名称mysqld就是我们将mysql.server复制到/etc/init.d/时重命名的名称。

    *查看是否添加成功

    [root@root mysql]#chkconfig --list mysqld

    mysqld   :off :off        :on        :on        :on        :on        :off

  i.  重启系统,mysqld就会自动启动了。

    *检查是否启动

    [root@root mysql]#netstat -anp|grep mysqld (查看mysqld的端口状态)

    tcp              0.0.0.0:               0.0.0.0:*                   LISTEN      /mysqld        

    unix       [ ACC ]     STREAM     LISTENING      /mysqld        /tmp/mysql.sock

    *如果不想重新启动,那可以直接手动启动。

   [root@root mysql]#service mysqld start

   Starting MySQL.. SUCCESS!

  j. 运行客户端程序mysql,在mysql/bin目录中,测试能否连接到mysqld。

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

      Welcome to the MySQLmonitor.  Commands end with ; or \g.

      Your MySQL connection idis 

      Server version:5.5.-log MySQL Community Server (GPL)

      Copyright (c) , ,Oracle and/or its affiliates. All rights reserved.

      Oracle is a registeredtrademark of Oracle Corporation and/or its affiliates. Other names may betrademarks of their respective owners.

      Type 'help;' or '\h' forhelp. Type '\c' to clear the current input statement.

    mysql>

      Bye

  k. 初始化root用户的密码:

    [root@root mysql]#mysqladmin -u root password "new_password"

    [root@root mysql]#mysqladmin -u root -h host_name password "new_password"

    *host_name是主机名,通过命令hostname可以获取到。

  l. 为了避免每次都输入mysql的全路径/usr/local/mysql/bin/mysql,可将其加入环境变量中,在/etc/profile最后加入两行命令: 

  MYSQL_HOME=/usr/local/mysql

  export PATH=$PATH:$MYSQL_HOME/bin

    在终端中输入:

  [root@root3 mysql]# source /etc/profile

    使修改的环境变量生效。

   这样就可以在shell中直接输入mysql命令来启动客户端程序了。

  [root@root mysql]#mysql

      Welcome to the MySQLmonitor.  Commands end with ; or \g.

      Your MySQL connection idis 

      Server version:5.5.-log MySQL Community Server (GPL)

      Copyright (c) , ,Oracle and/or its affiliates. All rights reserved.

      Oracle is a registeredtrademark of Oracle Corporation and/or its

      affiliates. Other namesmay be trademarks of their respective

      owners.

      Type 'help;' or '\h' forhelp. Type '\c' to clear the current input statement.
      
      mysql>

5.安装过程中碰到的一些错误

  a. 当我在局域网其他机器的客户端访问这个mysql的时候,报如下错误:

  C:\Users>mysql -uroot -p123456 -h 192.168.0.17 mysql: [Warning] Using a password on the command line interface can be insecure.ERROR  (HY000): Host '192.168.0.7' is not allowed to connect to this MySQL server

  这段话的大体意思是192.168.0.7这台机器不允许连接mysql,通过在服务器端连接mysql,查看mysql数据库中的user表:

  mysql> use mysql
  Database changed
  mysql> select user,host from user;
  +------+-----------+
  | user | host |
  +------+-----------+
  | root | 127.0.0.1 |
  | root | :: |
  | | localhost |
  | root | localhost |
  +------+-----------+
   rows in set (0.00 sec)

   由以上所知:root用户只允许在127.0.0.1和localhost上连接,说明192.168.0.7没有权限连接mysql。开启远程连接.

   1).授权法  

  mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.0.7' IDENTIFIED BY '' WITH GRANT OPTION;
  Query OK, rows affected (0.23 sec)   mysql> select user,host from user ;
  +------+-------------+
  | user | host |
  +------+-------------+
  | root | 192.168.0.7 |
  | root | 127.0.0.1 |
  | root | :: |
  | | localhost |
  | root | localhost |
  +------+-------------+
   rows in set (0.00 sec)  

    mysql> flush privileges;
    Query OK, 0 rows affected (0.68 sec)

   通过这条语句,允许地址192.168.0.7上用root用户,密码123456来连接mysql的所有数据库,付给select,insert,update,delete权限。如果要允许所有的ip,则用'%'替换ip地址。

   开启远程登录参考: Mysql开启远程连接方法

  b.在做Mysql初始化的时候,报错The host 'root' could not be looked up with resolveip.解决方法如下:

  [root@root mysql]#/usr/local/mysql/bin/resolveip root
  /usr/local/mysql/bin/resolveip: Unable to find hostid for 'root': host not found
  [root@root mysql]#hostanme
  root
  [root@root mysql]#cat /etc/hosts
  127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 :: localhost localhost.localdomain localhost6 localhost6.localdomain6
  [root@root mysql]#vim /etc/hosts
  127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 :: localhost localhost.localdomain localhost6 localhost6.localdomain6
  127.0.0.1 root --添加的一行
  [root@root mysql]#/usr/local/mysql/bin/resolveip root
  IP address of root is 127.0.0.1

   最后运行mysql初始化

  [root@root mysql]#./script/mysql_db_install

  c. 防火墙的问题。

     a.关闭防火墙

    http://www.cnblogs.com/machanghai/p/5464714.html

   b.将相关服务端口放开。

   d. 如果远程和本地都登陆不上mysql服务器,因为要修改msyql数据库的user表的数据,这个表保存着登录的权限信息,可采用以下方法:

    a.如果mysql启动着,先关闭mysql服务器。

    b.mysqld_safe --user=mysql --skip-grant-tables --skip-networking & (跳过权限表的启动方式)

    c.此时就可以访问到mysql数据库了。可以通过sql语句修改user表的权限信息即可。(注意user是root,host是localhost的数据必须存在)。

    d.因为此时mysql是以跳过权限表的方式启动的,所以要关闭mysql服务器,使用命令mysqladmin -uroot -p shutdown。然后以正常方式启动。

  e. 使用service mysqld start时候启动错误:Starting MySQL. ERROR! The server quit without updating PID file (/usr/local/mysql/data/mch.pid).

   第一个mysql启动不了了,我重新安装mysql的时候报错,解决方法参考:http://www.111cn.net/database/mysql/47258.htm

  f. Mysql默认访问的目录是/usr/local/mysql, 如果安装的mysql不在/usr/local/mysql目录下的话,一定要设置my.cnf配置文件的datadir和basedir目录。不然mysql启动不了。

   

参考文章:1.http://blog.csdn.net/superchanon/article/details/8546254/

     2.http://dev.mysql.com/doc/refman/5.5/en/default-privileges.html

     3.http://dev.mysql.com/doc/refman/5.5/en/binary-installation.html

     4.http://www.tuicool.com/articles/RZJnim

     5.http://www.cnblogs.com/qq78292959/p/3641972.html

     6. Mysql开启远程连接方法

CentOS6.5_x86安装Mysql5.5.49的更多相关文章

  1. CentOS6.5安装MySQL5.6

    CentOS6.5安装MySQL5.6,开放防火墙3306端口,允许其他主机使用root账户密码访问MySQL数据库 查看操作系统相关信息 ** 该查看方法只适用于CentOS6.5 (lsb_rel ...

  2. centos6.5安装Mysql5.6及更改密码

    (一) centos6.5安装Mysql5.6 二进制文件安装的方法分为两种: 第一种是不针对特定平台的通用安装方法,使用的二进制文件是后缀为.tar.gz的压缩文件: 第二种是使用RPM或其他包进行 ...

  3. Centos6.5安装MySQL5.6备忘记录

    Centos6.5安装MySQL5.6 1. 查看系统状态 [root@itzhouq32 tools]# cat /etc/issue CentOS release 6.5 (Final) Kern ...

  4. CentOS6.5安装mysql5.7

    CentOS6.5安装mysql5.7 查看mysql的安装路径: [root@bogon ~]# whereis mysql mysql: /usr/bin/mysql /usr/lib/mysql ...

  5. 第三百九十九节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装mysql5.6

    第三百九十九节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装mysql5.6 1.检测系统是否已经安装过mysql或其依赖,若已装过要先将其删除,否则第4步 ...

  6. centos6.8安装mysql5.6【转】

    首先先要去看看本机有没有默认的mysql, 本地默认有的,我们应先卸载,在安装新的这个逻辑. rpm -qa | grep mysql 我本机默认安装的mysql5.1.73 下一步删除 rpm -e ...

  7. centos6.6安装mysql5.7.6(采用MySQL Yum Repository)—(先看最后一行)

    在centos6.6系统上采用MySQL Yum Repository安装mysql5.7.6: 帮助文档:http://dev.mysql.com/doc/refman/5.7/en/linux-i ...

  8. centos6.8安装mysql5.5

    在使用阿里云的时候发现centos6.8系统自带的源当中没有mysql5.5,在网易这些源里面也是5.1的版本.这里安装mysql5.5的话需要另外添加一个源. 1.查看是否已经安装了MySQL rp ...

  9. Centos6.5安装mysql5.7详解

    最近在linux上面安装mysql5.7上真是遇到了很多坑,真是让人头疼,在这里跟大家简单分享一下流程跟注意的地方. 1.查看linux版本是6.5 cat /etc/redhat-release 2 ...

随机推荐

  1. python多版本的pip共存问题解决办法

    python pip 多版本 问题情景 最开始学python的时候用的是py2,且一直用pip来安装库函数.后来py3出来了,所以就装上了,但是一装上出问题了,主要有两个主要的问题.下面将详细说明. ...

  2. linux最小安装

    (1)系统安装类型选择及自定义额外包组 进入如图2-28所示界面.上半部分是系统定制的不同的系统安装类型选择项,默认是“Desktop”,这里我们选择“Minimal”,即最小化安装,下半部分是在上面 ...

  3. Unity3D中的AI架构模型

    我们都知道现在AI(由人工制造出来的系统所表现出来的模拟人类的智能活动)非常的火,可以说是家喻户晓.当然,在游戏中,AI也是到处可以找到的,对于AI,我们应该关注的问题是如何让游戏角色能够向人或动物那 ...

  4. Alamofire源码解读系列(十一)之多表单(MultipartFormData)

    本篇讲解跟上传数据相关的多表单 前言 我相信应该有不少的开发者不明白多表单是怎么一回事,然而事实上,多表单确实很简单.试想一下,如果有多个不同类型的文件(png/txt/mp3/pdf等等)需要上传给 ...

  5. JavaWeb之session

    Session是服务器端技术 利用这个技术,服务器在运行时可以为每一个用户的浏览器创建一个其独享的session对象,由于session为用户浏览器独享,所以用户在访问服务器的web资源时,可以把各自 ...

  6. 4.在浏览器中解析XML

    要在浏览器中解析获取XML数据,一般只需经过两个步骤:第一,将XML文档.XML字符串转化成XMLDoc对象.第二,使用JS操作XMLDoc对象. 3.1 将XML文档或XML字符串转化成XMLDoc ...

  7. Eclipse插件ObjectAid(UML画图工具)

    原链接:https://my.oschina.net/keyven/blog/856594 最近想找一个Eclipse上的插件,可以方便的把java代码转换为UML图,但是由于我用的是Eclipse ...

  8. Android安全开发之启动私有组件漏洞浅谈

    0x00 私有组件浅谈 android应用中,如果某个组件对外导出,那么这个组件就是一个攻击面.很有可能就存在很多问题,因为攻击者可以以各种方式对该组件进行测试攻击.但是开发者不一定所有的安全问题都能 ...

  9. Android 开发之错误整理java.lang.SecurityException: Requires READ_PHONE_STATE: Neither user 10088 nor current process has android.permission.READ_PHONE_STATE.

    java.lang.SecurityException: Requires READ_PHONE_STATE: Neither user 10088 nor current process has a ...

  10. jQuery animate()动画效果

    1.jQuery动画效果 jQuery animate()方法用于创建自定义动画 $(selector).animate({params},speed,callback); //必需的 params ...