和这个配对的图片骨髓是什么样子的图片

RHEL 6.5系统安装配置图解教程 | 系统运维
技术交流QQ群:& && && &
现在的位置:
RHEL 6.5系统安装配置图解教程
截止目前RHEL 6.x最新版本为RHEL 6.5,下面介绍RHEL 6.5的具体安装配置过程
服务器相关设置如下:
操作系统:RHEL 6.5 64位
IP地址:192.168.0.54
网关:192.168.0.1
DNS:8.8.8.8
rhel-server-6.5系统镜像有32位和64位两个版本,生产服务器如果是大内存(4G以上内存)
建议安装64位版本
一、安装RHEL 6.5
用光盘成功引导系统,会出现下面的界面
温馨提醒:qihang01原创内容(C)版权所有,转载请注明出处及原文链接
界面说明:
Install or upgrade an existing system 安装或升级现有的系统
install system with basic video driver 安装过程中采用 基本的显卡驱动
Rescue installed system 进入系统修复模式
Boot from local drive 退出安装从硬盘启动
Memory test 内存检测
这里选择第一项,安装或升级现有的系统,回车。
出现是否对CD媒体进行测试的提问,这里选择“Skip”跳过测试。
出现下面的界面
选择语言为:English(English)
#生产服务器建议安装英文版本
键盘选择为:U.S.English
选择第一项,基本存储设备
选择第一项:Yes,忽略所有数据
设置主机名,默认即可,也可以自定义
时区选择:Asia/Shanghai 亚洲/上海
取消"System clock user UTC" 前面的勾,不使用UTC时间
设置root密码
注意:如果你使用的密码过于简单,系统会自动提示:您的密码不够安全,过于简单化/系统化
这里选择“Use Anyway" 无论如何都使用
选择最后一项,Create Custom Layout 创建自定义布局
可以看到硬盘的容量,我这里显示的是16G,现在自定义分区。
注意:分区之前,自己先要规划好,怎么分区
我这里的分区如下:
硬盘总共16G
#一般设置为内存的2倍
#剩余所有空间
特别说明:用于正式生产的服务器,切记必须把数据盘单独分区,防止系统出问题时,保证数据的完整性。
比如可以再划分一个/data专门用来存放数据。
选中空闲分区Free,点创建Create,选择标准分区Standard Partition,再点创建Create
文件系统类型File System Type:swap
大小Size:1024
其他选项默认即可
继续选中空闲分区Free,点创建Create
文件系统类型:ext4
选中“使用全部可用空间”
其他选项默认即可
创建好分区之后,如上图所示,然后点Next
点“Format”格式化
选择“Write changes to disk”将修改写入磁盘
默认是:第一项,基本服务器
如果是初次学习,建议选择:Desktop桌面
如果是用作正式服务器,建议选择:Minimal最小
这里选择:Minimal
点“Reboot”重新引导,系统自动重启
重启之后,出现下面登录界面
二、设置IP地址、网关DNS
说明:RHEL 6.5默认安装好之后是没有自动开启网络连接的!
输入账号root
再输入安装过程中设置的密码,登录到系统
/etc/sysconfig/network-scripts/ifcfg-eth0
#编辑配置文件,添加修改以下内容
BOOTPROTO=static
#启用静态IP地址
ONBOOT=yes
#开启自动启用网络连接
IPADDR=192.168.0.54
#设置IP地址
NETMASK=255.255.255.0
#设置子网掩码
GATEWAY=192.168.0.1
DNS1=8.8.8.8 #设置主DNS
DNS2=8.8.4.4 #设置备DNS
service network restart
#重启网络连接
#测试网络是否正常
#查看IP地址
三、使用系统镜像文件配置本地yum源
1、使用WinSCP.exe工具上传系统镜像文件rhel-server-6.5-x86_64-dvd.iso到/usr/local/src目录
2、使用Putty.exe工具远程连接到RHEL服务器
3、挂载系统镜像文件
mkdir /media/cdrom #新建镜像文件挂载目录
cd /usr/local/src
#进入系统镜像文件存放目录
#列出目录文件,可以看到刚刚上传的系统镜像文件
mount -t iso9660 -o loop /usr/local/src/rhel-server-6.5-x86_64-dvd.iso
/media/cdrom #挂载系统镜像
/media/cdrom
#进入挂载目录,使用ls命令可以看到已经有文件存在了
备注:umount
/media/cdrom
#卸载系统镜像
4、设置开机自动挂载系统镜像文件
vi /etc/fstab
#添加以下代码。实现开机自动挂载
/usr/local/src/rhel-server-6.5-x86_64-dvd.iso
/media/cdrom
defaults,ro,loop
:wq! #保存退出
备注:iso9660使用df
-T 查看设备
5、配置本地yum源
cd /etc/yum.repos.d/
#进入yum配置目录
rhel-media.repo
#建立yum配置文件
rhel-media.repo
#编辑配置文件,添加以下内容
[rhel-media]
name=Red Hat Enterprise Linux 6.5
#自定义名称
baseurl=file:///media/cdrom #本地光盘挂载路径
#启用yum源,0为不启用,1为启用
gpgcheck=1
#检查GPG-KEY,0为不检查,1为检查
gpgkey=file:///media/cdrom/RPM-GPG-KEY-redhat-release
#GPG-KEY路径
:wq! #保存退出
6、使用yum命令自动安装软件
yum clean all
#清除yum缓存
yum makecache
#缓存本地yum源中的软件包信息
yum install httpd
#安装apache
chkconfig httpd on
#设为开机启动
/etc/init.d/httpd start #启动apache
vi /etc/sysconfig/iptables #配置防火墙,开启80端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
#允许80端口通过防火墙
:wq! #保存退出
/etc/init.d/iptables restart
#最后重启防火墙使配置生效
打开如下图所示:
扩展阅读:设置主机名为www
#设置主机名为www
vi /etc/sysconfig/network
#编辑配置文件
HOSTNAME=www
#修改localhost.localdomain为www
vi /etc/hosts #编辑配置文件
www localhost
#修改localhost.localdomain为www
shutdown -r now
至此,RHEL 6.5系统安装配置图解教程完成!
&&&&&>> 本文链接:>> 订阅本站:>> 转载请注明来源: >>
&&系统运维技术交流QQ群:①& ②& ③&
【上篇】【下篇】
您可能还会对这些文章感兴趣!
您必须才能发表留言!
本分类最新文章
日志总数:335篇
评论总数:1030条
分类总数:70个
标签总数:477个
友情链接:35个
网站运行:2089天
最后更新:日
欢迎PR值≥3的IT类技术博客与本站友情链接(申请前请先做好本站链接)
Copyright&
系统运维 All rights reserved
版权声明:本站所有文章均为作者原创内容,如需转载,请注明出处及原文链接升級 Centos 6.5 的 php 版本
Centos 6.5 的 php 預設是用 5.3.3 這個版本號
最近想要改用 Laravel 4.1 發現需要 5.3.7 才能用,所以我們要來升級一下
其實對 Centos 的部分來說就是換掉 yum 的資料庫
分以下步驟進行
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
wget /enterprise/remi-release-6.rpm
sudo rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
sudo vim /etc/yum.repos.d/remi.repo
進去把所有的&enabled 參數都改成 1
yum &enablerepo=remi update php* mysql*
最後再進行一次升級的動作
yum -y update php*
這樣就可以啦!
附帶一提,我們可以直接在指令模式中查詢 php 的版本
REFERENCE FROM : 
阅读(...) 评论()CentOS 5.4 通过yum升级PHP到5.3版本的两种方法_Linux教程_Linux公社-Linux系统门户网站
你好,游客
CentOS 5.4 通过yum升级PHP到5.3版本的两种方法
来源:Linux社区&
作者:suping
5.4的php版本默认为5.1.6,然后在5.2.9版本之前的的php都存在一个漏洞,但是目前网上很多地方都无法使用yum update php*升级到5.3,经过搜索国外资料,现在终于找到一种升级CentOS的php到5.3的方法。
注意,此方法只能在官方的php版本上升级,如果你使用网上的升级到5.3版本的升级方法已经升级了,将无法使用本方法升级php。
首先下载两个文件(epel-release-5-3.noarch.rpm 与 remi-release-5-7.el5.remi.noarch.rpm )
免费下载地址在
用户名与密码都是
具体下载目录在 /pub/CentOS/2011/07/rpm
rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm然后编辑/etc/yum.repos.d/remi.repo#vi /etc/yum.repos.d/remi.repo在这个文件的最后增加一行:priority=1
保存退出。/etc/yum.repos.d/epel.repo和/etc/yum.repos.d/epel-testing.repo这两个文件也按照上面的方法进行编辑!
使用下面的命令进行升级,但是经过测试,如果单独升级php将提示失败,只有联通mysql一起升级才可以,所以我们必须执行以下命令才能升级php到5.2.9版本:yum –enablerepo=remi update php* mysql*
CentOS 5.x 系统下使用yum 升级php到5.2.x 最方便方法近期使用testlink 1.82 ,提及php需要升级到5.2以上,而centos 5.x目前提供php版本为5.1.6,通过以下方法升级PHP到5.2比较方便,现推荐给大家。
先将以下地址导入。
# rpm –import /media/RPM-GPG-KEY-jlitka
# vi /etc/yum.repos.d/CentOS-Base.repo 增加下面信息
[utterramblings]name=Jason’s Utter Ramblings Repobaseurl=/media/EL$releasever/$basearch/enabled=1gpgcheck=1gpgkey=/media/RPM-GPG-KEY-jlitka
执行命令,自动升级。yum update php -yyum install libmcrypt -y
相关资讯 & & &
& (09/13/:27)
& (08/06/:28)
& (12/05/:04)
& (08/19/:24)
& (07/30/:32)
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款
匿名 发表于 大哥
这早不能用了在CentOS上把MySQL从5.5升级到5.6
摘要:本文记录了在CentOS 6.3上,把MySQL从5.5.28升级到5.6.19的过程。
在我做的一个项目中,最近我对生产服务器上的一系列系统软件进行了升级,包括Git、Nginx、MySQL和PHP。这篇文章讲的是升级MySQL的过程,其他软件的升级,可见下面列出的文章。
在CentOS上把MySQL从5.5升级到5.6 (本文)
在我加入这个项目之前,服务器上的MySQL已经安装设置好了,我只是正常使用而已。现在过去1年了,应该适当升级服务器上的软件了。升级这种事情是应当经常做的,倒不是为了追最新版本,而是当正式版本发放出来的时候,应该及时更新, 以便获得最新的更正、补丁,避免服务器上的漏洞,减少安全隐患。
升级是在今年6月11-12日进行的,到今天才有空做个记录,便于日后参考。
动手之前,查找了很多资料,因为MySQL要比之前升级的Git和Nginx要复杂多了。我在中列出了我所能找到作为依据的文档,可供参考。
我们使用的服务器是阿里云的,服务器的操作系统是CentOS 6.3。登录管理界面,发现共有两块物理硬盘,一块系统盘,一块数据盘,而我们只使用了系统盘,数据盘一直空着没用。所以,计划就变成:
加载数据硬盘
升级MySQL的同时,迁移MySQL数据到数据硬盘上。
3. 加载数据硬盘
下面的操作需要以超级管理员root的身份登录服务器进行操作。
3.1 查看硬盘
首先,查看硬盘使用情况:
# fdisk -l
Disk /dev/xvda: 21.5 GB,
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x
Device Boot
/dev/xvda1
/dev/xvda2
Linux swap / Solaris
Disk /dev/xvdb: 21.5 GB,
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x
Filesystem
Used Avail Use% Mounted on
/dev/xvda1
0% /dev/shm
可以看到,逻辑盘/dev/xvda1是位于根目录(/),/dev/xvda2是系统缓存(swap)。第二块物理硬盘/dev/xvdb的大小是21.5 GB,没有加载和使用,我们可以把它加载,并把MySQL的数据迁移到第二块物理硬盘上,把对系统盘和数据库的硬盘访问分流,希望这样一定程度上可以提高访问MySQL数据库的性能。
3.2 格式化数据硬盘
格式化第二块物理硬盘:
# mke2fs -j /dev/xvdb
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1310720 inodes, 5242880 blocks
262144 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=
160 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 24 mounts or
180 days, whichever comes first.
Use tune2fs -c or -i to override.
格式化顺利完成。
3.3 加载数据硬盘
下面,加载第二块物理硬盘为/data目录:
# mount /dev/xvdb /data
这个命令没有反馈,当时我有点儿吃惊和失落。因为这许多命令我也都是第一次从网上查到,第一次使用,对于它们的输出和结果,都有一种第一次坐过山车般的期待、兴奋、好奇和不确定,每一次的输出对于我都是新的,你不知道翻过面前这个坡之后会出现什么!
再用下面的命令查看新的逻辑盘:
Filesystem
Used Avail Use% Mounted on
/dev/xvda1
0% /dev/shm
可以看到/dev/xvdb是第二块物理硬盘!激动,成功了!
用下面的命令查看加载(mount)的类型:
/dev/xvda1 on / type xfs (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
/dev/xvdb on /data type ext3 (rw)
到这里,第二块物理硬盘加载成功,下面该yum出场了。
4. 升级MySQL的计划
不好意思,yum同学,编剧说你还要等下一幕。
升级MySQL时,又做了两个计划:
当然,首先要备份所有的数据库数据
计划A: 使用[6]的方法,添加安装库,用yum update升级
计划B: 用yum卸载MySQL 5.5,再安装MySQL 5.6
5. 计划A: yum update
下面大部分命令都需要在超级管理员root的权限下运行。
5.1 备份所有的数据库
用mysqldump来备份所有的数据库数据:
# mysqldump -u &db管理员用户名& -p --all-databases & 2014-06-12_all-db.sql
会提示输入密码,然后2014-06-11_all-db.sql就是备份数据,如果不想放在当前目录下,可以在上面的命令行上指定路径。
当然,也建议你单独备份每个用户数据库:
# mysqldump -u &db管理员用户名& -p mydb & 2014-06-12_mydb.sql
妥善保存这些非常重要的数据库备份文件。
5.2 查看MySQL的版本
用下面的命令查看MySQL的版本:
# mysql --version
Version 14.14 Distrib 5.5.28, for Linux (x86_64) using reeadline 5.1
可见,当前的MySQL的版本是5.5.28。
5.3 添加MySQL的yum安装库
这是参照[7]来做的,后来发现[6]的方法更好:
# wget http:///get/mysql-community-release-el6-5.noarch.rpm
# rpm -ivh mysql-community-release-el6-5.noarch.rpm
# yum list | grep mysql
这样很多更新的MySQL安装包就都有了。
如有必要,运行下面的命令确保yum安装库是最新的:
# yum update mysql-community-release
5.4 用yum查看MySQL安装相关信息
用下面的命令查看安装了什么:
# yum list installed | grep ^mysql
mysql-community-release.noarch
其中,^mysql是指以mysql开头的安装包。
用下面的命令查看安装了的和可用的安装包:
# yum info mysql-server
Installed Packages
: MySQL-Server
: 1.linux2.6
: installed
Available Packages
: mysql-server
这里不知道为啥可用的安装包没有显示MySQL 5.6的。
检查可用的安装包:
# yum check-update mysql-server
Obsoleting Packages
mysql-community-client.x86_64
5.6.19-2.el6
mysql56-community
MySQL-client.x86_64
5.5.28-1.linux2.6
mysql-community-devel.x86_64
5.6.19-2.el6
mysql56-community
MySQL-devel.x86_64
5.5.28-1.linux2.6
mysql-community-server.x86_64
5.6.19-2.el6
mysql56-community
MySQL-server.x86_64
5.5.28-1.linux2.6
可见,MySQL 5.6的安装包都算community版本了。
5.5 升级MySQL及其组件
运行下面的命令:
# yum update mysql-server
Dependencies Resolved
================================================================================
Repository
================================================================================
Installing:
mysql-community-client
5.6.19-2.el6
mysql56-community
MySQL-client.x86_64 5.5.28-1.linux2.6
mysql-community-server
5.6.19-2.el6
mysql56-community
MySQL-server.x86_64 5.5.28-1.linux2.6
Installing for dependencies:
mysql-community-common
5.6.19-2.el6
mysql56-community
mysql-community-libs
5.6.19-2.el6
mysql56-community
Transaction Summary
================================================================================
4 Package(s)
后面的输出省略了。可见有4个安装包(共70多MB)要下载、安装。结果,下载用了80分钟。
但安装遇到问题了:
Running rpm_check_debug
Running Transaction Test
Transaction Check Error:
file /usr/bin/mysql_config from install of mysql-community-client-5.6.19-2.el6
.x86_64 conflicts with file from package MySQL-devel-5.5.28-1.linux2.6.x86)64
Error Summary
-------------
可以看到出错了,搜索了一阵儿,也没搞明白。随即停止A计划(和成龙的电影没关系),改用B计划。
6. 计划B: 用yum卸载再安装
可以预料,这个计划要多折腾一些。仍然需要在超级管理员root的权限下运行下面的命令。
6.1 停止web服务器
这时为了避免用户访问网站时,看到数据库连接失败这样的错误信息。到这时我才想起这一点来,还是对用户关怀不够,应该在有可能宕掉网站的操作之前就做的。
因为使用的是Nginx,所以运行下面的命令:
# service nginx stopStopping nginx:
6.2 卸载MySQL 5.5.28
一共有3个包要卸载。
先卸载mysql-server包:
# yum remove mysql mysql-server
Dependencies Resolved
================================================================================
Repository
================================================================================
MySQL-server
5.5.28-1.linux2.6
Transaction Summary
================================================================================
1 Package(s)
Installed size: 153 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
: MySQL-server-5.5.28-1.linux2.6.x86_64
: MySQL-server-5.5.28-1.linux2.6.x86_64
MySQL-server.x86_64 0:5.5.28-1.linux2.6
再卸载mysql-client:
# yum remove mysql-client
Dependencies Resolved
================================================================================
Repository
================================================================================
MySQL-client
5.5.28-1.linux2.6
Transaction Summary
================================================================================
1 Package(s)
Installed size: 57 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
: MySQL-client-5.5.28-1.linux2.6.x86_64
: MySQL-client-5.5.28-1.linux2.6.x86_64
MySQL-client.x86_64 0:5.5.28-1.linux2.6
最后卸载mysql-devel:
# yum remove mysql-devel
Dependencies Resolved
================================================================================
Repository
================================================================================
MySQL-devel
5.5.28-1.linux2.6
Transaction Summary
================================================================================
1 Package(s)
Installed size: 20 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
: MySQL-devel-5.5.28-1.linux2.6.x86_64
: MySQL-devel-5.5.28-1.linux2.6.x86_64
MySQL-devel.x86_64 0:5.5.28-1.linux2.6
3个包的卸载都顺利完成。
6.3 安装MySQL 5.6.19
安装比卸载更简单,因为yum会自动检查依赖安装包:
# yum install mysql-server
Dependencies Resolved
================================================================================
Repository
================================================================================
Installing:
mysql-community-server
5.6.19-2.el6
mysql56-community
Installing for dependencies:
mysql-community-client
5.6.19-2.el6
mysql56-community
mysql-community-common
5.6.19-2.el6
mysql56-community
mysql-community-libs
5.6.19-2.el6
mysql56-community
Transaction Summary
================================================================================
4 Package(s)
Total size: 72 M
Installed size: 323 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : mysql-community-common-5.6.19-2.el6.x86_64
Installing : mysql-community-libs-5.6.19-2.el6.x86_64
Installing : mysql-community-client-5.6.19-2.el6.x86_64
Installing : mysql-community-server-5.6.19-2.el6.x86_64
warning: /f created as /etc/my.cnf.rpmnew
/bin/chmod: cannot access `': No such file or directory
: mysql-community-common-5.6.19-2.el6.x86_64
: mysql-community-libs-5.6.19-2.el6.x86_64
: mysql-community-client-5.6.19-2.el6.x86_64
: mysql-community-server-5.6.19-2.el6.x86_64
Installed:
mysql-community-server.x86_64 0:5.6.19-2.el6
Dependency Installed:
mysql-community-client.x86_64 0:5.6.19-2.el6
mysql-community-common.x86_64 0:5.6.19-2.el6
mysql-community-libs.x86_64 0:5.6.19-2.el6
由于篇幅关系,输出有所缩略。一切顺利,继续!
预告:繁琐的事情这才开始。
6.4 更改MySQL配置,来使用数据硬盘
更改\f,下面只列出更改的相关设置:
# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /var/lib/mysql
# data path changed to 2nd physical hard disk /dev/xvdb after upgrading from MySQL 5.5 to MySQL 5.6
innodb_data_home_dir = /data/mysql
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /var/lib/mysql
datadir = /data/mysql
如果你也更改了数据目录,最后一行的 datadir = /data/mysql 切不可遗漏,我就是因为这一行实际上没有及时改,还是指向旧的数据目录,导致数据升级失败,直到升级数据之后才发现,在下文中有详细论述。
6.5 启动MySQL服务
启动服务:
# service mysql start
mysql: unrecognized service
居然出错了!只好直接运行MySQL的daemon:
# /etc/init.d/mysqld start
Starting mysqld:
后来才知道,mysql是MySQL 5.5的服务名称,到了MySQL 5.6服务就改名为mysqld了。所以,其实这里可以运行service mysqld start的。
6.6 升级MySQL数据库及表
按照[6],到这时,MySQL的程序已经升级完毕,要升级数据了。
先把旧数据目录下的所有文件都拷贝到新的数据目录下。可惜,这里的命令在我的工作日志中没有记录,日后找到再不上。不过这是基本的Linux命令,就算你不知道,也一定能在网上找到。
然后运行下面的命令:
# mysql_upgrade -uroot -p
Enter password:
Looking for 'mysql' as: mysql
Looking for 'mysqlcheck' as: mysqlcheck
Running 'mysqlcheck' with connection arguments: '--port=&为安全故略去&' '--socket=/var/lib/mysql/mysql.sock'
Warning: Using a password on the command line interface can be insecure.
Running 'mysqlcheck' with connection arguments: '--port=&为安全故略去&' '--socket=/var/lib/mysql/mysql.sock'
Warning: Using a password on the command line interface can be insecure.
mysql.columns_priv
mysql.event
mysql.func
# ... ... 为省略篇幅故略去 ... ...
mysql.time_zone_transition
mysql.time_zone_transition_type
mysql.user
Running 'mysql_fix_privilege_tables'...
Warning: Using a password on the command line interface can be insecure.
Running 'mysqlcheck' with connection arguments: '--port=&为安全故略去&' '--socket=/var/lib/mysql/mysql.sock'
Warning: Using a password on the command line interface can be insecure.
Running 'mysqlcheck' with connection arguments: '--port=&为安全故略去&' '--socket=/var/lib/mysql/mysql.sock'
Warning: Using a password on the command line interface can be insecure.
mydb.table1
mydb.table2
# ... ... 为省略篇幅故略去 ... ...
mydb.table793
mydb.table794
到这里发现,数据库有问题,数据升级并未成功。原因就是之前提及的,升级数据时\f中的数据目录(即datadir = 这一行)还是指向旧的数据目录,我猜想这导致一些操作发生了混乱。
这时我感觉到难免的慌张和混乱,之后我做了一些尝试:
重复升级数据的过程,结果依旧
尝试修复缺失或者损毁的系统数据库中的5个数据表,结果发现文档犹如进入了一个迷宫,不得要领。
不得不就此作罢。
6.7&重新创建数据目录
看起来由于我之前的疏忽,数据库已经在上一步升级数据中被损毁了!
这时候,你能做什么!谷歌(或者百度)就是你当前最好的朋友!
在冒汗和揪头发的折磨中,总算找到了根救命稻草mysql_install_db,详见[9],这个命令可以重新创建数据目录,这就意味着重新创建系统数据库mysql,也意味着现有的用户数据库都将被清除。这时,你会感谢上帝、佛祖、圣母和玉皇大帝,如果你在最开始对所有的数据库做了备份的话。回头看一下我们在做的事情,就知道这是多么重要了!有了备份,我们就可以恢复所有的数据库了!
先要做的,是在MySQL的配置文件中设置正确的数据目录。再次更改\f,下面只列出更改的相关设置:
datadir = /data/mysql
然后,祭出我们的救命稻草mysql_install_db来重新创建数据目录(如果你想知道该命令的详细参数,可见[9]):
# /usr/bin/mysql_install_db --user=mysql --datadir=/data/mysql
Installing MySQL system tables...2014-06-13 00:35:17 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2014-06-13 00:35:17 11574 [Note] InnoDB: Using atomics to ref count buffer pool pages
2014-06-13 00:35:17 11574 [Note] InnoDB: The InnoDB memory heap is disabled
2014-06-13 00:35:17 11574 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2014-06-13 00:35:17 11574 [Note] InnoDB: Compressed tables use zlib 1.2.3
2014-06-13 00:35:17 11574 [Note] InnoDB: Using Linux native AIO
2014-06-13 00:35:17 11574 [Note] InnoDB: Using CPU crc32 instructions
2014-06-13 00:35:17 11574 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2014-06-13 00:35:17 11574 [Note] InnoDB: Completed initialization of buffer pool
2014-06-13 00:35:17 11574 [Note] InnoDB: Highest supported file format is Barracuda.
2014-06-13 00:35:17 11574 [Note] InnoDB: 128 rollback segment(s) are active.
2014-06-13 00:35:17 11574 [Note] InnoDB: Waiting for purge to start
2014-06-13 00:35:17 11574 [Note] InnoDB: 5.6.19 log sequence number
2014-06-13 00:35:17 11574 [Warning] InnoDB: Cannot open table mysql/innodb_table_stats from the internal data dictionary of InnoDB though the .frm file for the table exists. See http:///doc/refman/5.6/en/innodb-troubleshooting.html for how you can resolve the problem.
ERROR: 1146
Table 'mysql.innodb_table_stats' doesn't exist
2014-06-13 00:35:17 11574 [ERROR] Aborting
2014-06-13 00:35:17 11574 [Note] Binlog end
2014-06-13 00:35:18 11574 [Note] InnoDB: FTS optimize thread exiting.
2014-06-13 00:35:18 11574 [Note] InnoDB: Starting shutdown...
2014-06-13 00:35:19 11574 [Note] InnoDB: S log sequence number
2014-06-13 00:35:19 11574 [Note] /usr/sbin/mysqld: Shutdown complete
又出错了!别慌,这是因为数据目录并未清空,其中还有之前损毁的数据库文件。
删除当前的数据目录。我实际做的是把 /data/mysql 改名为 /data/mysql.bak2,效果一样,/data/mysql 目录不存在了,只是我做了个物理文件备份。
再次重建数据目录:
# /usr/bin/mysql_install_db --user=mysql --datadir=/data/mysql
Installing MySQL system tables...2014-06-13 00:46:06 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2014-06-13 00:46:06 11654 [Note] InnoDB: Using atomics to ref count buffer pool pages
2014-06-13 00:46:06 11654 [Note] InnoDB: The InnoDB memory heap is disabled
2014-06-13 00:46:06 11654 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2014-06-13 00:46:06 11654 [Note] InnoDB: Compressed tables use zlib 1.2.3
2014-06-13 00:46:06 11654 [Note] InnoDB: Using Linux native AIO
2014-06-13 00:46:06 11654 [Note] InnoDB: Using CPU crc32 instructions
2014-06-13 00:46:06 11654 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2014-06-13 00:46:06 11654 [Note] InnoDB: Completed initialization of buffer pool
2014-06-13 00:46:06 11654 [Note] InnoDB: The first specified data file /data/mysql/ibdata1 did not exist: a new database to be created!
2014-06-13 00:46:06 11654 [Note] InnoDB: Setting file /data/mysql/ibdata1 size to 12 MB
2014-06-13 00:46:06 11654 [Note] InnoDB: Database physically writes the file full: wait...
2014-06-13 00:46:06 11654 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB
2014-06-13 00:46:07 11654 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB
2014-06-13 00:46:09 11654 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0
2014-06-13 00:46:09 11654 [Warning] InnoDB: New log files created, LSN=45781
2014-06-13 00:46:09 11654 [Note] InnoDB: Doublewrite buffer not found: creating new
2014-06-13 00:46:09 11654 [Note] InnoDB: Doublewrite buffer created
2014-06-13 00:46:09 11654 [Note] InnoDB: 128 rollback segment(s) are active.
2014-06-13 00:46:09 11654 [Warning] InnoDB: Creating foreign key constraint system tables.
2014-06-13 00:46:09 11654 [Note] InnoDB: Foreign key constraint system tables created
2014-06-13 00:46:09 11654 [Note] InnoDB: Creating tablespace and datafile system tables.
2014-06-13 00:46:09 11654 [Note] InnoDB: Tablespace and datafile system tables created.
2014-06-13 00:46:09 11654 [Note] InnoDB: Waiting for purge to start
2014-06-13 00:46:09 11654 [Note] InnoDB: 5.6.19 log sequence number 0
2014-06-13 00:46:10 11654 [Note] Binlog end
2014-06-13 00:46:10 11654 [Note] InnoDB: FTS optimize thread exiting.
2014-06-13 00:46:10 11654 [Note] InnoDB: Starting shutdown...
2014-06-13 00:46:12 11654 [Note] InnoDB: S log sequence number 1625977
Filling help tables...2014-06-13 00:46:12 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2014-06-13 00:46:12 11678 [Note] InnoDB: Using atomics to ref count buffer pool pages
2014-06-13 00:46:12 11678 [Note] InnoDB: The InnoDB memory heap is disabled
2014-06-13 00:46:12 11678 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2014-06-13 00:46:12 11678 [Note] InnoDB: Compressed tables use zlib 1.2.3
2014-06-13 00:46:12 11678 [Note] InnoDB: Using Linux native AIO
2014-06-13 00:46:12 11678 [Note] InnoDB: Using CPU crc32 instructions
2014-06-13 00:46:12 11678 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2014-06-13 00:46:12 11678 [Note] InnoDB: Completed initialization of buffer pool
2014-06-13 00:46:12 11678 [Note] InnoDB: Highest supported file format is Barracuda.
2014-06-13 00:46:12 11678 [Note] InnoDB: 128 rollback segment(s) are active.
2014-06-13 00:46:12 11678 [Note] InnoDB: Waiting for purge to start
2014-06-13 00:46:12 11678 [Note] InnoDB: 5.6.19 log sequence number 1625977
2014-06-13 00:46:12 11678 [Note] Binlog end
2014-06-13 00:46:12 11678 [Note] InnoDB: FTS optimize thread exiting.
2014-06-13 00:46:12 11678 [Note] InnoDB: Starting shutdown...
2014-06-13 00:46:14 11678 [Note] InnoDB: S log sequence number 1625987
后面还有一些输出,只是一些说明,关于如何准备MySQL的服务、如何设置管理员密码、等等。
好了,到这里,看起来总算恢复都正常了。
继续,设置管理员密码:
# mysqladmin -u root password '********'
6.8 恢复用户数据库
这时,只是重建了系统数据库mysql,原先的用户数据库都没了。要先创建(空的)用户数据库,然后从备份恢复。
进入MySQL命令行:
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.
Your MySQL connection id is 7
Server version: 5.6.19 MySQL Community Server (GPL)
再创建用户数据库:
mysql& CREATE DATABASE `mydb`;
Query OK, 1 row affected (0.00 sec)
mysql& exit
这时,mydb数据库还是空的。从之前的数据库备份恢复mydb:
# mysql -u root -p mydb & 2014-06-12_mydb.sql
Enter password:
用户数据库顺利恢复。
6.9 设置服务(daemon)在机器启动时启动
开启mysqld服务的开机启动状态:
# chkconfig mysqld on
# chkconfig --list mysqld
正确!继续。
6.10 重启web服务器
对应于,我们要再次开启网站、允许用户访问了:
# service nginx start
Starting nginx:
测试网站,一切正常!
6.11 修改CakePHP中数据库连接的设置
其实网站还有点儿小问题,不过这和MySQL升级无关,只是作为完整的实际过程,记录在这里。
实际上这时还是无法访问网站的,访问网站主页时遇到下面的错误:
01:07:23 Warning: Warning (2): mysql_connect() [&a href='http://php.net/function.mysql-connect'&function.mysql-connect&/a&]: No such file or directory in [/usr/share/nginx/.../cake/libs/model/datasources/dbo/dbo_mysql.php, line 561]
根据[11],修改CakePHP 1.3代码中的app/config/database.php:
class DATABASE_CONFIG {
public $default = array(
'datasource' =& 'Database/Mysql',
'persistent' =& false,
'host' =& 'localhost',
'login' =& 'username',
'password' =& 'password',
'database' =& 'mydb',
'prefix' =& ''
,'encoding' =& 'utf8'
,'port' =& '/data/mysql/mysql.sock'
如上所示,增加了port的设置。注意,这只适用于*nix系统,Windows上是不需要这样的。另,CakePHP 2.x的设置与此略有不同,请参考相关文档。
这样网站就能正常访问了。
A. 参考资料
阿里云,盛大云安装LUM 硬盘加载方法说明
阿里云新购买的linux数据盘,加载方法
ext3 or ext4 how to check which one am using?
在阿里云Linux服务器上安装MySQL
Basic Yum Commands and how to use them
Using the MySQL Yum Repository :: 3 Upgrading MySQL with the MySQL Yum Repository
[研究] MySQL Community 5.6.15 版安裝(yum) (CentOS 6.5 x64)
How to upgrade MySQL 5.5 to MySQL 5.6 on CentOS 6.3/Red-hat/Fedora
MySQL 5.6 Reference Manual :: 4.4.3 mysql_install_db & Initialize MySQL Data Directory
mysql_install_db: How to set the root password
CakePHP: No such file or directory (trying to connect via unix:///var/mysql/mysql.sock)
阅读(...) 评论()

我要回帖

更多关于 体癣是什么样子的图片 的文章

 

随机推荐