在Linux操作系统下,安装MYSQL有两种方式:一种tar安装方式,另外一种是rpm安装方式。这两种安装方式有什么区别呢?尽管我们在Linux下常用tar来压缩/解压缩文件,但MYSQL的tar格式的文件其实只是mysql的文件包,并不能直接安装,需要操作configure、make、install等命令才能完成安装,是一种比较繁琐的安装方式。而rpm格式的文件是真正的安装包,相当于windows的exe文件,可以直接安装。
本文以MySQL-5.6.20 32位版本rpm格式的安装方式为例,详述MySQL的安装方式,64位的rpm版本安装方式也是如此。
(一)删除老版本的MySQL 在安装前要先确定系统是否已经安装了其他版本的MySQL,如已安装其他版本的MySQL,需先删除后再安装新版本。经本文亲测,采用如下方式删除老版本的MySQL或MySQL残留文件作为方便。 1. 执行yum命令,删除MySQL的lib库,服务文件
yum remove mysql mysql-server mysql-libs mysql-server; |
2. 执行find命令,查找MySQL的残留文件,然后运行“rm -rf 文件名”删除残留的MySQL文件
find / -name mysql |
(二)RPM格式安装MySQL
当前,MySQL的最新版本为:5.6.20,从官网下载MySQL的rpm安装包,解压后有如下七个文件:
MySQL-client-advanced-5.6.20-1.el6.i686.rpm #MySQL客户端程序MySQL-devel-advanced-5.6.20-1.el6.i686.rpm #MySQL的库和头文件MySQL-embedded-advanced-5.6.20-1.el6.i686.rpm #MySQL的嵌入式程序MySQL-server-advanced-5.6.20-1.el6.i686.rpm #MySQL服务端程序MySQL-shared-advanced-5.6.20-1.el6.i686.rpm #MySQL的共享库MySQL-shared-compat-advanced-5.6.20-1.el6.i686.rpm #RHEL兼容包MySQL-test-advanced-5.6.20-1.el6.i686.rpm #MySQL的测试组件 |
一般对于开发而言,我们只需要下面三个文件就可以。
MySQL-client-advanced-5.6.20-1.el6.i686.rpmMySQL-devel-advanced-5.6.20-1.el6.i686.rpmMySQL-server-advanced-5.6.20-1.el6.i686.rpm |
1. 在重新进行安装之前,为确保万无一失,我们还是再确认一下系统中是否有MySQL极其相关的RPM安装包。如果有,则先删除。
rpm -qa | grep -i mysql |
执行完上述命令后,返回空数据,则可进行第二步。否则,执行下面的命令删除MySQL的相关包文件。
yum -y remove mysql-libs* |
2. 将前面提到的三个MySQL安装文件,拷贝到服务器,然后执行下述安装命令。
rpm -ivh MySQL-server-advanced-5.6.20-1.el6.i686.rpm rpm -ivh MySQL-devel-advanced-5.6.20-1.el6.i686.rpm rpm -ivh MySQL-client-advanced-5.6.20-1.el6.i686.rpm |
上述三个命令在执行时,只有第一个命令执行的时间稍微长些,后面两个命令运行速度很快。
3.执行下述命令,将MySQL的配置文件拷贝到/etc目录下。
cp /usr/share/mysql/my-default.cnf /etc/my.cnf |
4.分别运行下述命令,初始化MySQL及设置密码。
/usr/bin/mysql_install_db #初始化MySQLservice mysql start #启动MySQLcat /root/.mysql_secret #查看root账号的初始密码,会出现下述所示信息
mysql -uroot -pZFRmqNPoFH3aO5PU #使用root账号登陆MySQLset password=password(‘123456’); #更改MySQL密码,注意;不可少exit #退出mysql -uroot -p123456 #使用新密码登陆 |
5.配置允许远程登陆。
use mysql;mysql> select host,user,password from user;+———–+——+——————————————-+| host | user | password |+———–+——+——————————————-+| localhost | root | *DFEB299B8A17E376E7804A115F471149953B5645 || chenxu | root | *6E4C48EDF3CC66BC5F6E6C0980935C8ED660EFAA || 127.0.0.1 | root | *6E4C48EDF3CC66BC5F6E6C0980935C8ED660EFAA || ::1 | root | *6E4C48EDF3CC66BC5F6E6C0980935C8ED660EFAA |+———–+——+——————————————-+4 rows in set (0.00 sec) mysql> update user set password=password(‘aqjccmtj’) where user=’root’;Query OK, 3 rows affected (0.00 sec)Rows matched: 4 Chan本文来源gao@daima#com搞(%代@#码网ged: 3 Warnings: 0 mysql> update user set host=’%’ where user=’root’ and host=’localhost’;Query OK, 1 row affected (0.00 sec)Rows matched: 1 Changed: 1 Warnings: 0 mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)mysql> exitBye |
6.设置开机启动
[root@favccxx local]# chkconfig mysql on [root@favccxx local]# chkconfig –list | grep mysql mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off |
上面打印出来的内容中,2~5为on就是开机启动了。
7.修改/etc/my.cnf,设置MySQL的字符集,配置MySQL表明不区分大小写(默认情况下,MySQL对表名区分大小写,列名不区分大小写)。在[mysqld]下面加入如下内容:
character_set_server=utf8character_set_client=utf8 collation-server=utf8_general_cilower_case_table_names=1max_connections=1000 |
8.MySQL的默认文件路径
/var/lib/mysql/ #数据库目录/usr/share/mysql #配置文件目录/usr/bin #相关命令目录#启动脚本 |
9.重启MySQL
[root@favccxx local]# service mysql restart Shutting down MySQL.. SUCCESS! Starting MySQL. SUCCESS! |
在Linux下安装MySQL是很简单的事情,但同时也是一种很繁琐的事情,谁让Linux上的操作大多数都要靠命令来完成呢。对于初学者来言,要记住所有的命令并不是多么明智的选择,最好的方法还是将一些常用的操作记录在笔记中。