CentOS下以RPM方式安装MySQL5.5

2023-12-23 19:18

本文主要是介绍CentOS下以RPM方式安装MySQL5.5,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46507735

首先去mySQL官网下载页面:

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

Select Platform 选择  Oracle & Red Hat Linux 4 & 5

分别下载以下三个文件(由于我的机器是32位,下面是32位版本的包,如果你的机器是64位的请下载64位版本):

1. Red Hat & Oracle Linux 5 (x86, 32-bit), RPM Package
MySQL Server

2. Red Hat & Oracle Linux 5 (x86, 32-bit), RPM Package
Client Utilities

3. Red Hat & Oracle Linux 5 (x86, 32-bit), RPM Package
Development Libraries

使用wget命令使用断点传输的方式将这三个文件下载

[plain] view plain copy
print ?
  1. wget -c http://cdn.mysql.com/Downloads/MySQL-5.5/MySQL-server-5.5.28-1.rhel5.i386.rpm                                                                          
  2. wget -c http://cdn.mysql.com/Downloads/MySQL-5.5/MySQL-client-5.5.28-1.rhel5.i386.rpm                                                                          
  3. wget -c http://cdn.mysql.com/Downloads/MySQL-5.5/MySQL-devel-5.5.28-1.rhel5.i386.rpm  
wget -c http://cdn.mysql.com/Downloads/MySQL-5.5/MySQL-server-5.5.28-1.rhel5.i386.rpm                                                                        
wget -c http://cdn.mysql.com/Downloads/MySQL-5.5/MySQL-client-5.5.28-1.rhel5.i386.rpm                                                                        
wget -c http://cdn.mysql.com/Downloads/MySQL-5.5/MySQL-devel-5.5.28-1.rhel5.i386.rpm
下载完成后开始安装:
rpm -ivh MySQL-server-5.5.28-1.rhel5.i386.rpm
rpm -ivh MySQL-client-5.5.28-1.rhel5.i386.rpm
rpm -ivh MySQL-devel-5.5.28-1.rhel5.i386.rpm

如果安装途中出错:

[plain] view plain copy
print ?
  1. error: Failed dependencies:                                                                   
  2.         libaio.so.1()(64bit) is needed by MySQL-server-5.5.28-1.rhel5.x86_64                                                                   
  3.         libaio.so.1(LIBAIO_0.1)(64bit) is needed by MySQL-server-5.5.28-1.rhel5.x86_64                                                                    
  4.         libaio.so.1(LIBAIO_0.4)(64bit) is needed by MySQL-server-5.5.28-1.rhel5.x86_64  
error: Failed dependencies:                                                                 libaio.so.1()(64bit) is needed by MySQL-server-5.5.28-1.rhel5.x86_64                                                                 libaio.so.1(LIBAIO_0.1)(64bit) is needed by MySQL-server-5.5.28-1.rhel5.x86_64                                                                  libaio.so.1(LIBAIO_0.4)(64bit) is needed by MySQL-server-5.5.28-1.rhel5.x86_64
是依赖库缺少,安装依赖库即可
[plain] view plain copy
print ?
  1. yum install libaio  
yum install libaio
提示安装完成后,输入mysql 看是否安装成功
[plain] view plain copy
print ?
  1. mysql  
mysql

如果没有反应或者出现如下错误信息:

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

说明mysql服务还没有启动,输入service mysql start启动mysql服务

[plain] view plain copy
print ?
  1. service mysql start  
service mysql start
然后再输入mysql,若出现以下提示信息,说明成功。

[plain] view plain copy
print ?
  1. Welcome to the MySQL monitor.  Commands end with ; or \g.  
  2. Your MySQL connection id is 1  
  3. Server version: 5.5.16 MySQL Community Server (GPL)  
  4.                                                               
  5. Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.  
  6.                                                               
  7. Oracle is a registered trademark of Oracle Corporation and/or its  
  8. affiliates. Other names may be trademarks of their respective  
  9. owners.  
  10.                                                               
  11. Type ‘help;’ or ’\h’ for help. Type ’\c’ to clear the current input statement.  
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.16 MySQL Community Server (GPL)Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
如果出现错误
[plain] view plain copy
print ?
  1. Starting MySQL…. ERROR! The server quit without updating PID file (/var/lib/mysql/lechiexxxxx.pid).  
Starting MySQL.... ERROR! The server quit without updating PID file (/var/lib/mysql/lechiexxxxx.pid).

根据错误地址 查看日志文件

这里的地址是 /var/lib/mysql/

日志名称一般为 服务器名.err

打开发现有这么一句:

[plain] view plain copy
print ?
  1. [ERROR] Fatal error: Can’t open and lock privilege tables: Table ‘mysql.host’ doesn’t exist  
  2. 121012 15:12:05 mysqld_safe mysqld from pid file /var/lib/mysql/lechiexxxxxx.pid ended  
[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
121012 15:12:05 mysqld_safe mysqld from pid file /var/lib/mysql/lechiexxxxxx.pid ended

所以是少了表。

执行表的初始化

[plain] view plain copy
print ?
  1. /usr/bin/mysql_install_db  
/usr/bin/mysql_install_db
之后执行启动还是失败,查看日志:

[plain] view plain copy
print ?
  1. [ERROR] Failed to open log (file ’./mysql-bin.000004’, errno 13)  
[ERROR] Failed to open log (file './mysql-bin.000004', errno 13)
应该是没有权限了,赋予mysql权限

[plain] view plain copy
print ?
  1. chown -R mysql:mysql /var/lib/mysql/  
chown -R mysql:mysql /var/lib/mysql/

之后重新执行 service mysql start 启动服务,success!

可以启动守护进程

[plain] view plain copy
print ?
  1. /usr/bin/mysqld_safe &  
/usr/bin/mysqld_safe &
我一般是一直回车几次退出 putty或secureCRT,然后重开一个会话即可

【问题】

mysql安装后装到哪里去了?一般在以下文件夹里

/usr/share/mysql/ 或者 /usr/lib/mysql/ 或者 /var/lib/mysql/

可以通过指令:

[plain] view plain copy
print ?
  1. whereis mysql  
whereis mysql
来查看到底安装到哪里去了。

【初始化设置】

rpm包安装的MySQL是不会安装/etc/my.cnf文件的,解决方法,只需要复制/usr/share/mysql目录下的my-huge.cnf 文件到/etc目录,并改名为my.cnf即可

[plain] view plain copy
print ?
  1. cp /usr/share/mysql/my-huge.cnf /etc/my.cnf  
cp /usr/share/mysql/my-huge.cnf /etc/my.cnf

【设置密码】

首次安装时,默认密码为空,可以使用如下命令修改root密码,

[plain] view plain copy
print ?
  1. /usr/bin/mysqladmin -u root  password 新密码XXXXX  
/usr/bin/mysqladmin -u root  password 新密码XXXXX
例如: /usr/bin/mysqladmin -u root password 123456

然后再次登录

[plain] view plain copy
print ?
  1. mysql -u root –p新密码XXXXX  
mysql -u root –p新密码XXXXX

修改登录密码

这是通过mysqladmin命令修改口令,也可通过修改库来更改口令。

【目录说明】

1、数据库目录

/var/lib/mysql/

2、配置文件

/usr/share/mysql(mysql.server命令及配置文件)

3、相关命令

/usr/bin(mysqladmin mysqldump等命令)

4、启动脚本

/etc/rc.d/init.d/(启动脚本文件mysql的目录)

【启动与停止】

1、启动

MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令即可。

/etc/init.d/mysql start

或者

/etc/rc.d/init.d/mysql start

2、停止

/usr/bin/mysqladmin -u root -p shutdown

3、自动启动

1)察看mysql是否在自动启动列表中

/sbin/chkconfig –list

2)把MySQL添加到你系统的启动服务组里面去

/sbin/chkconfig – add mysql

3)把MySQL从启动服务组里面删除。

/sbin/chkconfig – del mysql

【更改MySQL目录】

MySQL默认的数据文件存储目录为/var/lib/mysql。

假如要把目录移到/home/data下需要进行下面几步:
1、home目录下建立data目录

cd /home

mkdir data

记得赋予权限:

chown -R mysql:mysql /home/data

2、把MySQL服务进程停掉:

mysqladmin -u root -p shutdown

3、把/var/lib/mysql整个目录移到/home/data

mv /var/lib/mysql /home/data/

这样就把MySQL的数据文件移动到了/home/data/mysql下

4、找到my.cnf配置文件

如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,

拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

5、编辑MySQL的配置文件/etc/my.cnf

为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。

修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值

为:/home/mysql/mysql.sock 。操作如下:

vi my.cnf ##用vi工具编辑my.cnf文件,找到下列数据修改之

# The MySQL server

[mysqld]

port = 3306

#socket = /var/lib/mysql/mysql.sock     ##原内容,为了更稳妥用“#”注释此行

socket = /home/data/mysql/mysql.sock #加上此行

6、修改MySQL启动脚本/etc/rc.d/init.d/mysql

最后,需要修改MySQL启动脚本/etc/rc.d/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存

放路径:home/data/mysql。

vi /etc/rc.d/init.d/mysql

#datadir=/var/lib/mysql##注释此行

datadir=/home/data/mysql ##加上此行

7、重新启动MySQL服务

/etc/rc.d/init.d/mysql start

或用reboot命令重启Linux

如果工作正常移动就成功了,否则对照前面的7步再检查一下。

【配置远程访问】

处于安全考虑,Mysql默认是不允许远程访问的,可以使用下面开启远程访问

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

//使修改生效
mysql>FLUSH PRIVILEGES

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

这篇关于CentOS下以RPM方式安装MySQL5.5的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/529166

相关文章

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

Spring创建Bean的八种主要方式详解

《Spring创建Bean的八种主要方式详解》Spring(尤其是SpringBoot)提供了多种方式来让容器创建和管理Bean,@Component、@Configuration+@Bean、@En... 目录引言一、Spring 创建 Bean 的 8 种主要方式1. @Component 及其衍生注解

python中的显式声明类型参数使用方式

《python中的显式声明类型参数使用方式》文章探讨了Python3.10+版本中类型注解的使用,指出FastAPI官方示例强调显式声明参数类型,通过|操作符替代Union/Optional,可提升代... 目录背景python函数显式声明的类型汇总基本类型集合类型Optional and Union(py

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

IDEA与MyEclipse代码量统计方式

《IDEA与MyEclipse代码量统计方式》文章介绍在项目中不安装第三方工具统计代码行数的方法,分别说明MyEclipse通过正则搜索(排除空行和注释)及IDEA使用Statistic插件或调整搜索... 目录项目场景MyEclipse代码量统计IDEA代码量统计总结项目场景在项目中,有时候我们需要统计

C#和Unity中的中介者模式使用方式

《C#和Unity中的中介者模式使用方式》中介者模式通过中介者封装对象交互,降低耦合度,集中控制逻辑,适用于复杂系统组件交互场景,C#中可用事件、委托或MediatR实现,提升可维护性与灵活性... 目录C#中的中介者模式详解一、中介者模式的基本概念1. 定义2. 组成要素3. 模式结构二、中介者模式的特点

详解Java中三种状态机实现方式来优雅消灭 if-else 嵌套

《详解Java中三种状态机实现方式来优雅消灭if-else嵌套》这篇文章主要为大家详细介绍了Java中三种状态机实现方式从而优雅消灭if-else嵌套,文中的示例代码讲解详细,感兴趣的小伙伴可以跟... 目录1. 前言2. 复现传统if-else实现的业务场景问题3. 用状态机模式改造3.1 定义状态接口3