RHEL6平台rpm方式安装MySQL数据库

1. Mysql数据库安装介绍:

Mysql是一种平台无关的开源数据库,能够架构在Windows、Linux、Unix等平台上,本文主要是讲解在Linux平台上安装Mysql数据库,然而在Linux平台上安装软件又分为rpm版的安装和源代码安装,本文以rpm包的安装方式作为介绍,介绍在RHEL6平台上安装和部署Mysql数据库。

2. 安装和部署Mysql数据库

Mysql数据是一种C/S模式的访问方式,其所使用的数据包分为Server和Client包,其中mysql-server是服务器包,mysql-client是客户端包,安装这些rpm包通常可以使用两种方式:

1. 使用rpm 直接使用rpm -ivh mysql-server-version命令进行安装

2. 使用yum rpm的安装方式具有包的依赖性问题,安装不便,yum能够解决rpm包之间的依赖性问题

第一种:使用rpm安装

操作步骤:

1. 将光盘挂载到系统中mount(光盘的名字在rhel5中是/dev/hdc,在rhel6中为/dev/scd0,可以直接使用/dev/cdrom的方式挂载)

[root@station254 ~]# mount -o loop /var/ftp/iso/rhel-server-6.2-x86_64-dvd.iso /mnt/cdrom/ 此处是以iso的方式挂载

[root@station254 ~]# df /mnt/cdrom/ 查看挂载的情况,挂载到/mnt/cdrom下
文件系统 1K-块 已用 可用 已用% 挂载点
/var/ftp/iso/rhel-server-6.2-x86_64-dvd.iso
3505504 3505504 0 100% /mnt/cdrom

2. 使用rpm -ivh的方式安装(在rhel5中大部分包在Server目录中,而rhel6的包在Pakages目录下)

[root@station254 ~]# rpm -ivh /mnt/cdrom/Packages/mysql-server-5.1.52-1.el6_0.1.x86_64.rpm 服务器端软件包
Preparing... ########################################### [100%]
1:mysql-server ########################################### [100%]

[root@station254 ~]# rpm -ivh /mnt/cdrom/Packages/mysql-5.1.52-1.el6_0.1.x86_64.rpm 客户端软件包
Preparing... ########################################### [100%]
package mysql-5.1.52-1.el6_0.1.x86_64 is already installed

注意:使用rpm命令安装软件包的时候需要进入到光盘所挂载的目录下,否则需要写上完整的路径,使用ivh参数,其中i表示install即安装,v表示verbose即显示安装过程,h表示hash即显示安装过程的进度条。同时需要注意的是,使用rpm包这种安装方式会有包与包之间的以来关系存在,需要注意,建议使用yum的方式进行安装。

第二种:使用yum的方式安装

yum是一种解决rpm包依赖性关系的一种软件包安装方式,其原理是将各个rpm包之间依赖性关系通过一些工具保留为一个数据库文件,当客户端安装软件的时候通过读取该依赖性文件,从而知道安装的时候需要安装那些额外的rpm包,然后从yum服务器中下载对应的rpm包,并安装,从而实现一种智能化安装,类似与windows下的自动安装。

yum默认的时候需要配置才能使用,yum可以分为网络yum源,也可以分为局域网内的yum源,Internet的yum源能够供大家通过Internet而使用yum仓库,RedHat有提供专门的yum仓库,但是需要收费,而现今CentOS提供了免费的yum源,国内一些知名网站如163和中科院都提供了yum仓库,可以直接使用(有兴趣参考yum的章节),本文以配置表本地yum为例,构建出本地yum源.

配置的步骤如下:

1. 将光盘挂载到指定的位置(建议编写/etc/fstab永久生效)
[root@station254 ~]# vim /etc/fstab
/var/ftp/iso/rhel-server-6.2-x86_64-dvd.iso /mnt/cdrom iso9660 defaults,loop 0 0

[root@station254 ~]# mount -a 加载挂载选项,模拟开机的过程,防止/etc/fstab文件编写错误

[root@station254 ~]# df /mnt/cdrom/ 查看挂载的情况
Filesystem 1K-blocks Used Available Use% Mounted on
/var/ftp/iso/rhel-server-6.2-x86_64-dvd.iso
3505504 3505504 0 100% /mnt/cdrom

2. 默认光盘就是一个yum源,因为Redhat已经将rpm包之间的依赖性关系文件保存在数据库文件内,所以直接配置客户端即可

[root@station254 ~]# vim /etc/yum.repos.d/station254.repo 客户端配置文件,只要是以.repo结尾即可,名字可任意取

[Base] 仓库的名字,任意取,不重复即可,基本仓库,大部分软件包所在路径
name=Red Hat Enterprise Linux 6.2 Server 描述信息,任意写
baseurl=file:///mnt/cdrom/Server 所在的路径,必须使用url的写法,本地使用file://书写的格式
enabled=1 是否启用,开关,1表示启用,0表示关闭
gpgcheck=1 是否使用GPG公钥校验,建议开启
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 公钥文件所在路径

[HighAvailability] 高科用软件包所在仓库
name=Red Hat Enterprise Linux 6.2 HighAvailability
baseurl=file:///mnt/cdrom/HighAvailability
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[LoadBalancer] 负载均衡软件包所在仓库
name=Red Hat Enterprise Linux 6.2 LoadBalancer
baseurl=file:///mnt/cdrom/LoadBalancer
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

3. 安装mysql数据库软件包(可以采用软件包名和软件包组的方式安装)

1. 软件包的方式安装:
[root@station254 ~]# yum -y install mysql-server mysql


2. 软件包组的方式安装:
[root@station254 ~]# yum -y groupinstall "MySQL Database server" "MySQL Database client"


3. Mysql软件包的结构:

查看下mysql-server的软件包结构:
[root@station254 ~]# rpm -ql mysql-server
/etc/rc.d/init.d/mysqld 服务控制脚本
/usr/bin/innochecksum mysql服务器工具
/usr/bin/myisam_ftdump
/usr/bin/myisamchk
/usr/bin/myisamlog
/usr/bin/myisampack
/usr/bin/mysql_convert_table_format
/usr/bin/mysql_fix_extensions
/usr/bin/mysql_fix_privilege_tables
/usr/bin/mysql_install_db
/usr/bin/mysql_secure_installation
/usr/bin/mysql_setpermission
/usr/bin/mysql_tzinfo_to_sql
/usr/bin/mysql_upgrade
/usr/bin/mysql_zap
/usr/bin/mysqlbug
/usr/bin/mysqld_multi
/usr/bin/mysqld_safe
/usr/bin/mysqldumpslow
/usr/bin/mysqlhotcopy
/usr/share/mysql/my-huge.cnf 配置文件模板
/usr/share/mysql/my-innodb-heavy-4G.cnf
/usr/share/mysql/my-large.cnf
/usr/share/mysql/my-medium.cnf
/usr/share/mysql/my-small.cnf
/var/lib/mysql 数据库存放的路径
/var/log/mysqld.log 日志文件
/var/run/mysqld 进程文件

4. 启动和管理mysqld服务:

1.当前启动mysqld服务
[root@station254 ~]# service mysqld start 启动
正在启动 mysqld: [确定]
[root@station254 ~]# service mysqld stop 关闭
停止 mysqld: [确定]
[root@station254 ~]# service mysqld restart 重启
停止 mysqld: [确定]
正在启动 mysqld: [确定]
[root@station254 ~]# service mysqld status 查看状态
mysqld (pid 7556) 正在运行...

2. 设置下次开机启动
[root@station254 ~]# chkconfig --level 35 mysqld on 设置在35级别上开启服务

[root@station254 ~]# chkconfig --list mysqld
mysqld 0:off 1:off 2:off 3:on 4:off 5:on 6:off

3. 查看监听端口:
[root@station254 ~]# netstat -antupl | grep mysqld mysqld服务默认监听TCP的3306号端口
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 7556/mysqld

4. 查看进程状况:
[root@station254 ~]# ps aux | grep mysqld
root 7467 0.0 0.0 108256 1476 pts/2 S 15:41 0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib /mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql
mysql 7556 0.0 0.3 377020 24324 pts/2 Sl 15:41 0:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock
root 7619 0.0 0.0 103272 764 pts/2 S+ 15:46 0:00 grep --color=auto mysqld

5. 客户端工具的使用mysql:

Linux下提供了一个访问mysql服务器的客户端工具—mysql,其由mysql软件包提供,除了这些工具之外还有一些图形化界面工具如Navicate或者MysqlAdmin等,本文采用mysql作为客户端,用于登录mysql服务器。

mysql的语法如下:
mysql -u username -ppassword -h hostname -P port -u后面链接用户名,-p后面连接密码,-h后面连接IP地址或域名,-P连接端口号,默认使用TCP的3306号端口默认直接使用mysql即可登录到mysql服务器,因为默认没有设置密码。

[root@station254 ~]# mysql 直接输入mysql即可登录
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.52 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> 获得了操纵mysql数据库的接口

以上是mysql默认的设置,默认不许要密码即可以登录到mysql服务器的root用户(相当与linux的超级用户,独立)权限,这样的做法不够安装,建议安装好mysql数据库之后设置mysql的root密码,使用mysqladmin工具可以设置。

mysqladmin工具的语法: mysqladmin -u username password new_password

如设置超级用户root的密码为redhat:mysqladmin -u root password redhat 设置了密码之后则不能直接使用mysql客户端登录

设置密码之后需要加上-p参数才能够登录,可以直接在写在命令行中,或者是以交互式的方式输入,如下:

[root@station254 ~]# mysql -u root -h localhost -p
Enter password: 输入密码redhat,或者是将密码放在p参数后面(必须紧密连接在一起)

推荐阅读:

 

相关推荐