MySQL安装

Linux中使用最广泛的数据库就是MySQL,使用在线yum的方式安装的版本落后MySQL网站好几个小版本,本节亲自测试安装新版的MySQL。


测试机器环境:

VMware Workstation 10 虚拟机

内存:1G

Linux版本:CentOS MinimalCD 6.5

JAVA:JAVA_HOME=/opt/jdk


安装mysql前需要查询系统中含有的有关mysql的软件。

  1. rpm -qa | grep -i mysql //grep -i是不分大小写字符查询,只要含有mysql就显示

屏幕显示:

  1. mysql-libs-5.1.71-1.el6.i686 //它是好几个软件的依赖,其中在mini版本中postfix软件依赖mysql-libs,网络上很多建议都是直接删除,
  2. yum remove mysql-libs 或者 rpm -e --nodeps mysql-libs-5.1.71-1.el6.i686,总觉得这样做不好。
  1. 查找mysql官方资料,得到安装方法是用MySQL-shared-compatmysql-libs-5.1.71-1.el6.i686替换为同版本后在安装mysql

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

CentOS是RedHatLinux系列的,因此选择RedHatLinux(见红线地方),网页会自动变成RedHatLinux有关的mysql下载:

需要下载2个内容,一个是MySQL-5.6.21-1.el6.i686.rpm-bundle.tar,这个是几个程序的合集包,另一个是MySQL-shared-compat-5.6.21-1.el6.i686.rpm,这个是软件包包括MySQL 3.23和MySQL 4.0的共享库。如果你安装了应用程序动态连接MySQL 3.23,但是你想要升级到ySQL 4.0而不想打破库的从属关系,则安装该软件包而不要安装MySQL-shared。从MySQL 4.0.13起包含该安装软件包。

将2个文件上传到CentOS中,解压MySQL-5.6.21-1.el6.i686.rpm-bundle.tar。

  1. #tar xvf MySQL-5.6.21-1.el6.i686.rpm-bundle.tar
  2. MySQL-client-5.6.21-1.el6.i686.rpm
  3. MySQL-devel-5.6.21-1.el6.i686.rpm
  4. MySQL-shared-5.6.21-1.el6.i686.rpm
  5. MySQL-test-5.6.21-1.el6.i686.rpm
  6. MySQL-server-5.6.21-1.el6.i686.rpm
  7. MySQL-embedded-5.6.21-1.el6.i686.rpm
  8. #ls -l
  9. total 415068
  10. -rw-r--r--. 1 root root 210442240 Nov 11 11:12 MySQL-5.6.21-1.el6.i686.rpm-bundle.tar
  11. -rw-r--r--. 1 7155 wheel 17813608 Sep 12 16:25 MySQL-client-5.6.21-1.el6.i686.rpm
  12. -rw-r--r--. 1 7155 wheel 3131328 Sep 12 16:25 MySQL-devel-5.6.21-1.el6.i686.rpm
  13. -rw-r--r--. 1 7155 wheel 83106000 Sep 12 16:25 MySQL-embedded-5.6.21-1.el6.i686.rpm
  14. -rw-r--r--. 1 7155 wheel 54611632 Sep 12 16:26 MySQL-server-5.6.21-1.el6.i686.rpm
  15. -rw-r--r--. 1 7155 wheel 1878756 Sep 12 16:27 MySQL-shared-5.6.21-1.el6.i686.rpm
  16. -rw-r--r--. 1 root root 4141488 Nov 18 14:42 MySQL-shared-compat-5.6.21-1.el6.i686.rpm
  17. -rw-r--r--. 1 7155 wheel 49887932 Sep 12 16:27 MySQL-test-5.6.21-1.el6.i686.rpm

安装MySQL-shared-compat替换mysql-libs,如果不替换,在删除mysql-libs,会提示postfix依赖于mysql-libs:

  1. # rpm -i MySQL-shared-compat-5.6.21-1.el6.i686.rpm
  2. # rpm -qa | grep -i mysql
  3. mysql-libs-5.1.71-1.el6.i686
  4. MySQL-shared-compat-5.6.21-1.el6.i686
  5. # yum remove mysql-libs

测试MySQL-server安装,提示需要安装perl:

  1. # rpm -ivh --test MySQL-server-5.6.21-1.el6.i686.rpm
  2. # yum install perl

安装MySQL-server,MySQL-client:

  1. # rpm -ivh MySQL-server-5.6.21-1.el6.i686.rpm
  2. Preparing... ########################################### [100%]
  3. 1:MySQL-server ########################################### [100%]
  4. ………………
  5. ………………
  6. A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER !
  7. You will find that password in '/root/.mysql_secret'.
  8. You must change that password on your first connect,
  9. no other statement but 'SET PASSWORD' will be accepted.
  10. See the manual for the semantics of the 'password expired' flag.
  11. Also, the account for the anonymous user has been removed.
  12. In addition, you can run:
  13. /usr/bin/mysql_secure_installation
  14. ………………
  15. ………………
  16. # rpm -ivh MySQL-client-5.6.21-1.el6.i686.rpm
  17. Preparing... ########################################### [100%]
  18. 1:MySQL-client ########################################### [100%]

在安装MySQL-server,见上面的一段话,大意是全新安装设置的root密码在/root/.mysql_secret中,这是一个随机密码,你需要运行/usr/bin/mysql_secure_installation,删除anonymous用户。当然不建议用root用户来运行,rpm包已经建了一个mysql用户,可以使用这个用户:

  1. #more .mysql_secret
  2. # The random password set for the root user at Tue Nov 18 22:57:46 2014 (local t
  3. ime): NljqL63OYlGo5cqy <– 得到root访问mysql的密码:NljqL63OYlGo5cqy
  4. # service mysql start
  5. Starting MySQL... SUCCESS!
  6. # /usr/bin/mysql_secure_installation --user=mysql
  7. NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
  8. SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
  9.  
  10. In order to log into MySQL to secure it, we'll need the current
  11. password for the root user. If you've just installed MySQL, and
  12. you haven't set the root password yet, the password will be blank,
  13. so you should just press enter here.
  14.  
  15. Enter current password for root (enter for none): <–使用刚才得到的root的密码 NljqL63OYlGo5cqy
  16. OK, successfully used password, moving on...
  17.  
  18. Setting the root password ensures that nobody can log into the MySQL
  19. root user without the proper authorisation.
  20.  
  21. You already have a root password set, so you can safely answer 'n'.
  22.  
  23. Change the root password? [Y/n] y <– 是否更换root用户密码,输入y并回车,强烈建议更换
  24. New password: <– 设置root用户的密码
  25. Re-enter new password: <– 再输入一次你设置的密码
  26. Password updated successfully!
  27. Reloading privilege tables..
  28. ... Success!
  29.  
  30. By default, a MySQL installation has an anonymous user, allowing anyone
  31. to log into MySQL without having to have a user account created for
  32. them. This is intended only for testing, and to make the installation
  33. go a bit smoother. You should remove them before moving into a
  34. production environment.
  35.  
  36. Remove anonymous users? [Y/n] y <– 是否删除匿名用户,生产环境建议删除,所以输入y并回车
  37. ... Success!
  38.  
  39. Normally, root should only be allowed to connect from 'localhost'. This
  40. ensures that someone cannot guess at the root password from the network.
  41.  
  42. Disallow root login remotely? [Y/n] y <–是否禁止root远程登录,根据自己的需求选择Y/n并回车,建议禁止
  43. ... Success!
  44.  
  45. By default, MySQL comes with a database named 'test' that anyone can
  46. access. This is also intended only for testing, and should be removed
  47. before moving into a production environment.
  48.  
  49. Remove test database and access to it? [Y/n] y <– 是否删除test数据库,输入y并回车
  50. - Dropping test database...
  51. ... Success!
  52. - Removing privileges on test database...
  53. ... Success!
  54.  
  55. Reloading the privilege tables will ensure that all changes made so far
  56. will take effect immediately.
  57.  
  58. Reload privilege tables now? [Y/n] y 是否重新加载权限表,输入y并回车
  59. ... Success!
  60.  
  61. All done! If you've completed all of the above steps, your MySQL
  62. installation should now be secure.
  63.  
  64. Thanks for using MySQL!
  65.  
  66. Cleaning up...

至此,MySQL已经安装完成,最后看一下是否已将MySQL加到开机服务里:

  1. # chkconfig
  2. auditd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  3. blk-availability 0:off 1:on 2:on 3:on 4:on 5:on 6:off
  4. crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  5. ip6tables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  6. iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  7. iscsi 0:off 1:off 2:off 3:on 4:on 5:on 6:off
  8. iscsid 0:off 1:off 2:off 3:on 4:on 5:on 6:off
  9. lvm2-monitor 0:off 1:on 2:on 3:on 4:on 5:on 6:off
  10. mdmonitor 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  11. multipathd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
  12. mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off <-看到这个OK
  13. netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off
  14. netfs 0:off 1:off 2:off 3:on 4:on 5:on 6:off
  15. network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  16. postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  17. rdisc 0:off 1:off 2:off 3:off 4:off 5:off 6:off
  18. restorecond 0:off 1:off 2:off 3:off 4:off 5:off 6:off
  19. rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  20. saslauthd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
  21. sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  22. udev-post 0:off 1:on 2:on 3:on 4:on 5:on 6:off

MySQL安装后涉及的目录如下:

目录 目录中的内容
/usr/bin 客户端程序和脚本
/usr/sbin Mysqld服务器
/var/lib/mysql 数据库的日志文件
/usr/share/info 信息格式手册
/usr/share/man Unix 手册页
/usr/include/mysql 包括 (标题) 的文件
/usr/lib/mysql mysql的lib包
/usr/share/mysql 杂项的支持文件,包括错误消息) 字符设置的文件,示例配置文件,SQL 数据库安装
/usr/share/sql-bench 基准

现在好了,可以测试你的MySQL了。

CentOS学习笔记--MySQL安装的更多相关文章

  1. CentOS学习笔记--Tomcat安装

    Tomcat安装 通常情况下我们要配置Tomcat是很容易的一件事情,但是如果您要架设多用户多服务的Java虚拟主机就不那么容易了.其中最大的一个问题就是Tomcat执行权限.普通方式配置的Tomca ...

  2. linux 学习笔记 mysql安装总结

    1 安装方式 下载2禁制源码安装包 mysql-5.5.27-linux2.6-i686.tar.gz 备注:2禁制额包解压缩后直接就可以使用 不用Make 2 步骤 shell>groupad ...

  3. CentOS学习笔记--JDK安装

    JDK安装 大部分的服务都离不开JAVA环境,CentOS里都是OpenJDK,显然我们还是使用JAVA的JDK好.(注:minimal版没有安装OpenJDK,其它版本需要删除这个.) JDK下载 ...

  4. 【Linux】CentOS 学习笔记之一(安装配制)

    如何打开命令窗口:应用程序>系统工具>终端 如何获取root 权限:在终端下,输入su 再输入密码(密码不显示在屏幕上) 如何将英文版转换成中文: [root@localhost ~]# ...

  5. CentOS学习笔记--SCSI 设备热插拔

    CentOS学习笔记--SCSI 设备热插拔 处于运行中的服务器,因业务要求也许不允许重启机器,而新添加的SCSI设备(主要是硬盘)如何实现热插拔呢? 首先需要查看一下设备: #cat /proc/s ...

  6. MySQL学习笔记-MySQL体系结构总览

    MySQL体系结构总览 不管是用哪种数据库,了解数据库的体系结构都是极为重要的.MySQL体系结构主要由数据库和数据库实例构成. 数据库:物理操作系统文件或者其它文件的集合,在mysql中,数据库文件 ...

  7. OracleDesigner学习笔记1――安装篇

    OracleDesigner学习笔记1――安装篇   QQ:King MSN:qiutianwh@msn.com Email:qqking@gmail.com 一.       前言 Oracle是当 ...

  8. Java学习笔记——MySQL的安装使用以及SQL语法简介

    在 Java 的开发中,数据库的应用是非常必要的,下面,我们为Java对于数据库的应用做一些必要的准备工作.. Java 对数据库的应用统称为 JDBC. JDBC(Java Data Base Co ...

  9. CUBRID学习笔记 2 安装教程

    下载地址  http://www.cubrid.org/?mid=downloads&item=any&os=detect&cubrid=9.3.0 选择适合你的服务器版本 l ...

随机推荐

  1. Ubuntu设置环境变量并立即生效

    Ubuntu Linux系统包含两类环境变量:系统环境变量和用户环境变量.系统环境变量对所有系统用户都有效,用户环境变量仅仅对当前的用户有效. 修改用户环境变量 用户环境变量通常被存储在下面的文件中: ...

  2. C++学习19 类的多继承

    在前面的例子中,派生类都只有一个基类,称为单继承.除此之外,C++也支持多继承,即一个派生类可以有两个或多个基类. 多继承容易让代码逻辑复杂.思路混乱,一直备受争议,中小型项目中较少使用,后来的 Ja ...

  3. JAVA中抽象类的一些总结

    抽象类和普通类一样,有构造函数.抽象类中有一些属性,可以利用构造方法对属性进行初始化.子类对象实例化的时候先执行抽象类的构造,再执行子类构造. 抽象类不能用final声明.因为抽象类必须有子类继承,所 ...

  4. Using Redis as Django's session store and cache backend

    http://michal.karzynski.pl/blog/2013/07/14/using-redis-as-django-session-store-and-cache-backend/

  5. 第二章 I - The 3n + 1 problem(2.4.2)

    这是一道很坑爹的题,一定注意输入的两个数的大小,并且不能简单的交换,因为在最后的输出的时候还需要将原来的数按照原来的顺序和大小,这就是为什么还得开辟两个值得原因 Description Problem ...

  6. Spring SpEL表达式的理解

    Spring的IOC本质就一个容器,也就是一个对象的工厂,我们通过配置文件注册我们的Bean对象,通过他进行对象的组装与床架. SpEL表达式就是一种字符串编程,类似于JS里面的EVAL的作用,通过它 ...

  7. AM3359之U-boot及kernel编译

    我用的PC主机是ubuntu12.04 LST 32位系统给出官方软件下载地址:TI官网SDK包06.00版本下载:http://software-dl.ti.com/sitara_linux/esd ...

  8. Map集合的遍历方式:

    迭代器来遍历 : entrySet() ; keySet(); values(); eg.HashMap<String,String> map = new HashMap<Strin ...

  9. [系统] 安装Ubuntu 双系统 - 失败

    因为工作原因, 所以需要装ubuntu系统. 在网络上查了一下, 一般都是使用U盘安装. 但是由于手头上既没有U盘又没有光盘,只能用硬盘安装了. 查一下, 使用wubi安装方式从硬盘安装, 非常方便. ...

  10. OC对象中的getter方法中不能用self.

    @interface boy:NSObject { int _age; } - (void)setAge:(int)age; - (int)age; @end @implementation boy ...