MySQL服务器的基本安装配置以及相关操作.docx

上传人:b****9 文档编号:29151818 上传时间:2023-07-20 格式:DOCX 页数:22 大小:1.67MB
下载 相关 举报
MySQL服务器的基本安装配置以及相关操作.docx_第1页
第1页 / 共22页
MySQL服务器的基本安装配置以及相关操作.docx_第2页
第2页 / 共22页
MySQL服务器的基本安装配置以及相关操作.docx_第3页
第3页 / 共22页
MySQL服务器的基本安装配置以及相关操作.docx_第4页
第4页 / 共22页
MySQL服务器的基本安装配置以及相关操作.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

MySQL服务器的基本安装配置以及相关操作.docx

《MySQL服务器的基本安装配置以及相关操作.docx》由会员分享,可在线阅读,更多相关《MySQL服务器的基本安装配置以及相关操作.docx(22页珍藏版)》请在冰豆网上搜索。

MySQL服务器的基本安装配置以及相关操作.docx

MySQL服务器的基本安装配置以及相关操作

第6章MySQL服务器

数据库服务一般是以后台运行的数据库管理系统为基础,加上一定的前台程序,为各种应用提供数据的存储、查询等功能的服务,广泛应用于电子商务、电子政务、因特网网站、搜索引擎、信息管理等不同领域。

本章主要介绍了数据库的基本知识。

6.1MySQL数据库

6.1.1MySQL简介

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。

目前MySQL被广泛地应用在Internet上的中小型网站中。

由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

MySQL最初开发者的意图是用mSQL和他们自己的快速低级例程(ISAM)去连接表格。

不管怎样,在经过一些测试后,开发者得出结论:

mSQL并没有他们需要的那么快和灵活。

这导致了一个使用几乎和mSQL一样API接口的新SQL的产生,这个API被设计成允许用mSQL书写的第三方代码,且更容易被移植到MySQL。

6.1.2MySQL的特性

●使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性;

●支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统;

●为多种编程语言提供了API。

这些编程语言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等;

●支持多线程,充分利用CPU资源;

●优化的SQL查询算法,有效地提高查询速度;

●既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其它的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名;

●提供TCP/IP、ODBC和JDBC等多种数据库连接途径;

●提供用于管理、检查、优化数据库操作的管理工具;

●可以处理拥有上千万条记录的大型数据库。

6.1.3MySQL的应用

目前,Internet流行的网站构架方式是LAM(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。

由于这四个软件都是遵循GPL的开放源码软件,因此使用这种方式不用花一分钱就可以建立起一个稳定、免费的网站系统。

与其它的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。

对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。

6.2MySQL的安装和使用

为了便于测试,防止在实验的过程中误删底层配置文件,由于物理机一旦出错,可能造成系统崩溃,因此本次实验的所有操作均在虚拟机中进行。

6.2.1软件包解压及安装

步骤1:

虚拟机前期环境配置

关闭防火墙和selinux:

iptables-F

setenforce0

serviceNetworkManagerstop

chkconfigNetworkManageroff

步骤2:

YUM软件仓库的配置

vim/etc/yum.repos.d/rhel.repo,将配置文件中原有的内容删除,重新录入以下内容,配置如图6-1所示。

图6-1YUM软件仓库的配置文件

yumrepolist//刷新软件仓库,成功效果如图6-2所示。

图6-2YUM软件仓库配置的成功效果

步骤3:

先删除原始包yumremovemysql*

注意:

我们使用的是mysql5.0版本需要将之前mysql6.0的软件包都卸载掉才行,否则,在启动执行的过程中会发生错误。

步骤4:

将图6-3安装包解压。

图6-3MySQL压缩包

tar-xf/root/Desktop/MySQL-5.6.22-1.el6.x86_64.rpm-bundle.tar

解压后将解压后的内容放在一个新创建的文件夹命名为MySQL,如图6-4所示。

图6-4解压后的内容

步骤5:

cdMySQL/下查看,效果如图6-5所示。

图6-5解压后的软件包

步骤6:

安装MySQL/目录下软件包

注意:

直接安装MySQL,因为有前后依赖性,所以可以用一条命令一起安装!

yuminstall-yMySQL-shared-compat-52-1.el6.x86_64.rpmMySQL-devel-5.6.22-1.el6.x86_64.rpmMySQL-

client-5.6.22-1.el6.x86_64.rpm

yuminstallMySQL-server-5.6.22-1.el6.x86_64.rpm

yum-IinstallMySQL-embedded-5.6.22-1.el6.x86_64

yum-yinstallMySQL-shared-5.6.22-1.el6.x86_64

yum-yinstallMySQL-test-5.6.22-1.el6.x86_64

步骤7:

安装成功后查看效果如图6-6所示。

图6-6MySQL安装的成功效果

注意:

安装成功后,只有大写Mysql的7个软件包,没有小写mysql的相关软件包。

步骤8:

重启服务,效果如图6-7所示。

图6-7重启mysql服务的成功效果

6.2.2修改mysql初始密码

步骤1:

切换在根目录下进行操作:

cd/root

步骤2:

查看初始密码:

cat.mysql_secret

执行过程如图6-8所示。

图6-8mysql初始密码

注意:

可以看见产生的随机密码,建议先将其复制下来,在后续步骤中会使用到,但是在复制时需要注意不能多、漏!

步骤3:

将mysql服务重启:

servicemysqlstart

步骤4:

进行密码修改:

mysql_secure_installation

成功效果如图6-9、6-10所示。

图6-9修改mysql初始密码的过程

注意:

要将之前复制的随机密码复制在图中第二标示处,才可以进行初始密码的修改。

图6-10修改mysql初始密码的成功效果

注意:

在修改密码过程中出现的“yesorno”选项,均为yes。

6.3MySQL客户端的相关介绍

客户端使用方式:

●交互式

●非交互式

最为常用的往往是交互式,而非交互式往往在某一些特殊需要下才进行使用。

mysql命令后面可以跟上很多相应的参数,不同的参数起到不同的作用,常见参数解释如下:

参数

解释

-u

指定登录用户名

-p

指定登录密码

-h

指定数据库主机地址

-P

指定登录端口

Dbname

指定操作数据库

-e

使用非交互式操作

6.4SQL语句及其操作

6.4.1SQL语句介绍:

●DDL(DataDefinitionLanguage):

数据定义语言,主要的命令有Create、Alter、Drop等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,它们大多在建立表时使用;

●DML(DataManipulationLanguage):

数据操纵语言,主要的命令有Select、Delete、Update、Insert4项操作,是对数据库里的数据进行操作的语言;

●DCL(DataControlLanguage):

数据控制语言,主要的命令有Grant、Revoke、Commit、Rollback是用来设置或更改数据库用户或角色权限的语句,实现数据库控制功能。

在默认状态下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权力执行DCL。

6.4.2数据库创建等相关内容

注意:

以root身份登录数据库的命令为:

“mysql-uroot-p123”(密码为所修改后的mysql密码,要根据自己修改的密码,不一定都是123),登陆后才可进行下面的操作;

退出数据库的命令为:

“exit”或“\q;”,退出当前登录用户。

(1)数据库创建:

createdatabaseshinee;//shinee为所创建的数据库名

创建成功效果如图6-11所示。

图6-11数据库创建成功的效果

(2)查看当前用户所有数据库:

showdatabases;

执行效果如图6-12所示。

图6-12当前用户的所有数据库

(3)删除数据库:

dropdatabaseshinee;

执行效果如图6-13所示。

图6-13删除数据库的成功效果

注意:

每一条sql语句的最后都需要有一个分号来进行结尾,表示整条语句执行完毕。

不然mysql这个客户端会认为你还会有一些后续的输入,并且会另起新的一行,来准备输入。

如果想修改上面一条语句,没有必要重新输入一遍,只要利用键盘的上下键就可以调出命令的历史。

6.4.3表的相关内容

注意:

在执行表的相关操作时,要先指定表所在的库:

usedatabasename;

(1)表的创建:

USEshinee;//指明使用该用户下的哪个数据库

CREATETABLEff(

idINT(10),

nameVARCHAR(20));

执行效果如图6-14所示。

图6-14创建表的成功效果

(2)表结构的查看:

方法一:

desctablename;

执行效果如图6-15所示。

图6-15查看表结构的方法1

方法二:

showcreatetableff;

执行效果如图6-16所示。

图6-16查看表结构的方法2

(3)查看当前库中的所有表:

Showtables;

执行效果如图6-17所示。

图6-17当前数据库的所有表

(4)查询表中记录:

select*fromff;

执行效果如图6-18所示。

图6-18查询表中记录的显示效果

注意:

为了查询表中记录的测试更为直观,所以在查询前我将两条记录插入了表ff中,故查询结果中显示两条记录。

若没有进行前期插入,正常情况下是空的,并不是存在错误,插入数据的命令将在以下内容中讲到。

(5)插入数据

方法一:

INSERTINTOff

SETid=1,

name=‘zhaofang’;

执行效果如图6-19所示。

图6-19向表中插入记录的方法1

方法二:

INSERTINTOff

(id,name)

VALUES

(2,'zhangsan');

执行效果如图6-20所示。

图6-20向表中插入记录的方法2

插入后查看效果:

select*fromff;

执行效果如图6-21所示。

图6-21插入成功的效果

(6)删除表中的记录

删除表中指定记录:

Deletefromffwherename='zhangsan';

执行效果如图6-22所示。

图6-22删除表中指定记录的成功效果

删除表中全部记录:

deletefromff;

执行效果如图6-23所示。

图6-23删除表中全部记录的成功效果

(7)表的删除:

droptableff;

执行效果如图6-24所示。

图6-24表删除的成功效果

6.4.4MySQL用户管理

(1)创建用户并设置密码:

格式:

createuser‘用户名’@’授予权限身份’identifiedby‘用户登录密码’

createuser'fangfang'@'localhost'identifiedby'123';

执行效果如图6-25所示。

图6-25创建用户并设置密码的命令执行效果

(2)查看所有用户:

方法1:

selectuserfrommysql.user;

方法2:

selectuserfrommysql.user\G;(按字段显示)

执行效果如图6-26所示。

图6-26查看所有用户的方法1

注意:

这里只对方法1的执行效果进行了演示,方法2同学们可进行测试。

(3)修改用户名

renameuserfangfang@'localhost'tozf@'localhost';

执行效果如图6-27所示。

图6-27修改用户名的命令执行效果

测试:

方法一:

selectuserfrommysql.user;

执行效果如图6-28所示。

图6-28修改用户名的测试方法1

方法二:

以zf身份登录看能否登录成功

退出当前登录用户:

exit

以zf身份登录:

mysql-uzf-p123

执行效果如图6-29所示。

图6-29修改用户名的测试方法2

(4)修改用户密码

●修改当前用户密码:

setpassword=password('123456');

●修改特定用户密码:

setpasswordfor'zf'@'localhost'=password('123456');

修改用户zf用户密码执行效果如图6-30所示。

图6-30修改用户zf登录密码的命令

连接测试1:

登录用户zf:

mysql-uzf-p123456

执行效果如图6-31所示。

图6-31以新密码登录用户zf的测试效果

●修改root密码:

updatemysql.usersetpassword=password('123456')

wherehost='localhost'anduser='root';

flushprivileges;//刷新权限

执行效果如图6-31所示。

图6-31修改root用户登录密码的操作过程

连接测试2:

登录root,执行效果如图6-33所示。

图6-33以新密码登录root的测试成功效果

注意:

在进行修改用户密码的三种方式的过程中,要注意灵活切换身份,若身份发生错误,则会导致测试不成功。

6.4.5MySQL授权

MySQL存取控制包含2个阶段:

阶段1:

服务器检查是否允许你连接。

阶段2:

假定你能连接,服务器检查你发出的每个请求。

看你是否有足够的权限实施它。

注意:

只有root用户有权限对自己或其他普通用户进行授权(或移除授权),普通用户无权对自己和其他用户(root用户或普通用户)进行授权的相关操作。

(1)查询用户授权信息

showgrantsforzf@'localjhost';

执行效果如图6-34所示。

图6-34查询用户zf授权信息的显示效果

(2)使用grant命令进行授权

格式:

grant权限on库.表to用户@主机

授予用户zf对shinee库下的ff表的select权限:

grantselectonshinee.fftozf@'localhost';

执行效果如图6-35所示。

图6-35select权限授权的命令操作

授予用户zf对shinee库下的ff表的insert权限:

grantinsertonshinee.fftozf@'localhost';

执行效果如图6-36所示。

图6-36insert权限授权的命令操作

测试:

方法一:

mysql>showgrantsforzf@'localhost';

执行效果如图6-37所示。

图6-37授权测的试方法1

方法二:

以zf身份测试,看能否对shinee库下的ff表进行查看和插入:

mysql-uzf-p123456

useshinee;

select*fromff;

insertintoffsetid=5,name=‘miho’;

测试结果:

该用户对ff表有查询和插入权限。

执行效果如图6-38所示。

图6-38授权的测试方法2

(3)移除授权:

revoke命令格式:

revoke权限on库.表from用户@主机;

revokeselectonshinee.fffromzf@'localhost';

查看移除授权后的效果:

showgrantsforzf@'localhost';

执行效果如图6-39所示。

图6-39移除授权及测试的成功效果

6.4.6配置过程中可能出现的问题

问题1:

问题描述:

使用yum-yinstallMySQL-*后,服务不被识别。

出错原因:

(1)由于忽略了软件包之间存在相互的依赖关系需要有一定安装顺序;

(2)实验中使用的是mysql5.0版本需要将之前mysql6.0的软件包都卸载掉才行,二者存在冲突,而导致服务无法识别.

解决方法:

需要将所安装mysql相关的包均卸载掉,只留下大写的7个包即可。

注意:

接着,要用手敲,注意协调卸载顺序,顺序不对就无法卸载成功,重启服务即可。

问题2:

问题描述:

将服务启动时,启动出错,错误提示信息为:

ERROR:

TheserverquitwithoutupdatingPIDfile(/var/lib/mysql/localhost.localdomain.pid).

出错原因:

mysql服务被其他进程占用,导致启动出错。

解决方案:

Ps-ef|grepmysql//查看其他进程是否占用该服务

Pkill-9*****//将对应进程号杀掉

再次重启服务即可:

Servicemysqlrestart。

 

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1