Linux-MySQL安装说明


 1.       Linux环境下MySQL的编译安装步骤

1.1   检查环境是否已经安装了MySQL

1. 执行命令: rpm –qa | grep –i mysql
Linux-MySQL安装说明

       从上图的执行结果可以看出系统中已经安装了一个版本的mysql.

1.2   卸载已经安装的MySQL

如果在第一的检查中,发现系统中已经安装了MySQL,那么首先要进行卸载。如果检查中没有安装,那可跳过此步骤。

卸载步骤:

       1. 执行删除命令:rpm   -e  --nodeps    包名(包名就是上一步的检查中查出来的:mysql-libs-5.1.71-1.el6.x86_64)。

本例子中执行的命令就是:rpm –e --nodeps mysql-libs-5.1.71-1.el6.x86_64。

 2. 执行完命令检查,没有了表示删除成功。
Linux-MySQL安装说明
 

3. 删除老版本mysql的开头文件和库

执行命令:rm –rf /usr/mysql  rm –rf /usr/include/mysql        rm –rf /etc/my.cnf

1.3   下载MySQL的安装包

1. 首先查看自己的操作系统的版本, 执行命令:lsb_release -a
Linux-MySQL安装说明

可以看出我的系统是CentOS_6.5

2. 去官方网站下载安装包。

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

       注意:因为CentOS是Red Hat系列的, 所以我们选择RedHat linux

      
Linux-MySQL安装说明
 

3.下载2个安装包:

       (MySQL-5.6.26-1.el6.i686.rpm-bundle.tar) 这个是几个程序的合集包。

(MySQL-shared-compat-5.6.26-1.el6.i686.rpm)这个是软件包的共享库, 包括MySQL 3.23和MySQL 4.0的共享库。如果你安装了应用程序动态连接MySQL 3.23,但是你想要升级到ySQL 4.0而不想打破库的从属关系,则安装该软件包而不要安装MySQL-shared。(此说明摘自别的网友分享,不知道是否正确)
Linux-MySQL安装说明

       关于下载的方式,可以在本地下载后上传到linux服务器, 也可以直接在linux服务器上用wget命令下载。

       我采用的是wget下载:

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-5.6.26-1.el6.i686.rpm-bundle.tar

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-shared-compat-5.6.26-1.el6.i686.rpm
Linux-MySQL安装说明
 

1.4   编译并安装MySQL

1.解压mysql的安装包

       命令:tar -xvf MySQL-5.6.26-1.el6.i686.rpm-bundle.tar –C ./mysql

       把文件解压到当前目录下的mysql目录中Linux-MySQL安装说明
 

2.测试安装rpm –ivh --test MySQL-server-5.6.26-1.e16.i686.rpmLinux-MySQL安装说明

测试没有问题,可以进行安装。有时候测试的结果会少一些依赖包,需要根据提示进行依赖包的安装(参考 可能遇到的问题)

3.执行安装命令:rpm –ivh MySQL-server-5.6.26-1.e16.i686.rpm
Linux-MySQL安装说明

 

 

 

 

安装成功

 

1.5   安装MySQL-shared-compat

执行命令rpm -ivh MySQL-shared-compat-5.6.26-1.el6.i686.rpm
Linux-MySQL安装说明

 

1.6   安装MySQL-client

执行命令:rpm -ivh MySQL-client-5.6.26-1.el6.i686.rpm
Linux-MySQL安装说明
 

2.       Linux环境下MySQL的yum安装步骤

此安装方法一样需要检查系统中是否安装了MySQL, 如果安装了也需要删除先

2.1   查询可用的mysql版本

执行命令:yum list | grep mysql
Linux-MySQL安装说明
 

从查询结果可以看出mysql-server的最高版本是5.1的,和现在官网的5.6的还是差好几个版本的。如果想安装最新版本,此方法不行。

2.2   执行安装命令

安装命令: yum –y install mysql-server mysql mysql-deve
Linux-MySQL安装说明

出现上图的结果就表示安装成功了。
Linux-MySQL安装说明

执行查询能看到安装的确实是5.1的版本。

3.       从MySQL官方yum仓库安装MySQL5.6

此方法来自互联网, 并未做验证

3.1   下载yumupdate包

下载地址:http://dev.mysql.com/downloads/repo/yum/

下载RedHat Enterprise Linux 6 / Oracle Linux 6版

根据不同的版本进行选择下载
Linux-MySQL安装说明

我下载的是: http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm

导入成功后就可以通过yum命令进行安装了。

3.2   导入yum库

执行命令: yum localinstall mysql-community-release-el6-*.noarch.rpm

3.3   安装

1. 安装mysql 服务器端:
          yum install mysql-server
          yum install mysql-devel
2. 安装mysql客户端:
          yum install mysql

4.       启动MySQL

4.1   执行启动命令:service msyqld start

Linux-MySQL安装说明
 从上图可以看出,第一次启动的时候会初始化数据库。再次启动的时候不会显示这么多内容。

4.2   重启命令:service mysqld restart

Linux-MySQL安装说明

4.3   停止命令:service mysqld stop

Linux-MySQL安装说明
 

5.       MySQL相关设置

5.1   开机自动启动设置

1.检查是否设置了开机启动

命令:chkconfig --list | grep mysqld
Linux-MySQL安装说明

发现没有设置开机自动启动

2.通过chkconfig mysqld on来设置开机自动启动
Linux-MySQL安装说明

3.通过chikconfig mysqld off来关闭开机自动启动
Linux-MySQL安装说明

5.2   设置root用户的新密码

因为第一次安装mysql后, root的密码为空。在第一次启动mysql的时候提示用命令

/usr/bin/mysqladmin -u root password 'new-password' 来设置新密码
Linux-MySQL安装说明

验证是否设置密码成功:

Linux-MySQL安装说明
 

5.3   解决内外网都能访问问题

执行sql:注意执行此sql中2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19为密码,应该修改成你自己的root的密码

insert into user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv, Create_view_priv, Show_view_priv, Create_routine_priv, Alter_routine_priv, Create_user_priv, Event_priv, Trigger_priv, ssl_type, ssl_cipher, x509_issuer, x509_subject, max_questions, max_updates, max_connections, max_user_connections) values('%','root','*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19,'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','','0','0','0','0');

如果添加了此项还不能外网访问, 可能是防火墙拦截, 关闭防火墙后再试。

关闭防火墙命令:/etc/init.d/iptables  stop
Linux-MySQL安装说明

 

5.4初始化mysql数据库

        /usr/bin/mysql_install_db --user=mysql --datadir=/var/lib/mysql

 

6.       可能遇到的问题

6.1   缺少libaio.so.1和libstdc++.so.6

Linux-MySQL安装说明

有时候在安装测试的时候会初相上图的情况,而且系统已经安装了libaio也不行。这个时候需要做2个操作

       yum –y install libaio.so.1

       yum –y install libstdc++.so.6

部分安装结果如下图:
Linux-MySQL安装说明
Linux-MySQL安装说明
 

6.2   Mysql-libs包冲突

Linux-MySQL安装说明

如上图所示的错误是因为系统已经安装了mysql-libs。
Linux-MySQL安装说明

只要进行删除就可以了
Linux-MySQL安装说明

6.3   缺少libz.so.1

Linux-MySQL安装说明

此情况是我在安装MySQL-shared-compat的时候出现的

解决办法:yum –y install libz.so.1
Linux-MySQL安装说明

6.4   缺少libtinfo.so.5Linux-MySQL安装说明

       此问题的出现是我在安装MySQL-client的时候出现的

        解决办法是安装libtinfo.so.5     
Linux-MySQL安装说明
 

有时候安装不上so.1的包,可以试着先安装gccgcc-c++

yum install gcc gcc-c++ kernel-devel

6.5   表名区分大小写

LINUX下的MYSQL默认是要区分表名大小写的

1.用ROOT登录,修改/etc/my.cnf

2.在[mysqld]下加入一行:lower_case_table_names=1

3.重新启动数据库即可。