您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > Linux从入门到提高-第12章--数据库服务器
Linux下数据库系统简介MySQL数据库系统简介MySQL数据库系统的安装设置用户访问权限MySQL常用操作在程序中操作MySQL数据库安装Oracle数据库系统测试Oracle数据库系统设置Oracle服务自动启动操作Oracle数据库在程序中操作Oracle数据库本章小结第12章数据库服务器配置数据库系统是一类重要的系统软件。当用户需要管理的数据量非常大时,采用数据库系统就可以大大减轻用户的工作量。MySQL是一个小型关系型数据库系统,它的开发者为瑞典MySQLAB公司,该公司于2008年被Sun收购。MySQL的主要优点是快速、稳定和容易使用,而且还开放源码,目前已被广泛地应用于Internet上的中小型网站中。安装MySQL数据库系统有两种方法:从MySQL的官方站点下载软件的源代码,编译后安装,或者获取RPM包进行安装。12.1Linux下数据库系统简介MySQL开发过程中,同时存在多个发布系列,每个发布处在成熟度的不同阶段,如下所示:MySQL5.2是目前最新的发布系列,提供了一些新的功能,不久的将来可以使用Alpha版。MySQL5.1是目前稳定的发布系列,该系列只针对漏洞修复重新发布,不会增加可能影响稳定性的新功能。MySQL5.0是上一个稳定的发布系列,目前只针对严重漏洞修复和安全修复重新发布,不会增加可能影响该系列的重要功能。MySQL4.0和3.23是旧的稳定发布系列,目前较少使用,新的发布只用来修复特别严重的漏洞。12.3.1基于源代码包的MySQL安装基于RPM包的MySQL安装相对来说比较简单。大多数情况下,用户只需要安装MySQL-server和MySQL-client软件包。MySQL安装完成后,将在如下目录中产生文件:/usr/bin:客户端程序和脚本/usr/sbin:mysqld服务器/var/lib/mysql:日志文件,数据库/usr/share/doc/packages:文档/usr/include/mysql:头文件/usr/lib/mysql:库文件/usr/share/mysql:错误消息和字符集文件/usr/share/sql-bench:基准程序12.3.2基于RPM包的MySQL安装为了安全起见,建议用户建立MySQL的用户组和用户名,不要轻易使用root账户启动MySQL服务器。12.4设置用户访问权限要使新添加的用户mysql能够对MySQL数据库进行操作,必须使该用户具有对相应文件和目录的访问权限。为了安全起见,建议用户建立MySQL的用户组和用户名,不要轻易使用root账户启动MySQL服务器。12.4.1建立MySQL的用户和用户组在启动MySQL之前,先要创建MySQL授权表,以控制用户对服务器的访问。MySQL的授权通过五个表来实现,用途分别为:user:设定是否允许用户连接到服务器db:设定哪些用户可以从哪些主机访问哪些数据库host:与db表结合使用,控制特定主机对数据库的访问权限tables_priv:设定表级权限columns_priv:设定列级权限12.4.3启动MySQLmysqld_safe选项:--basedir=path:MySQL的安装目录;--datadir=path:MySQL的数据目录;--ledir=path:包含mysqld程序的目录,即指定服务器位置;--log-error=path:指定错误日志文件;--nice=priority:设定服务器的调度优先级;--port=port_num:设定监听TCP/IP连接的端口号;--user={user_name|user_id}:以用户名或用户ID运行服务器;--help:显示帮助消息。12.4.3启动MySQL下面从连接MySQL数据库服务器、修改密码、增加用户等方面来讲述一些MySQL的常用命令。连接MySQL服务器可以使用如下命令:mysql–h主机地址–u用户名–p用户密码参数:-h:指定要连接的MySQL服务器的IP地址-u:连接服务器使用的用户名-p:连接服务器使用的密码退出MySQL非常简单,使用exit命令即可。12.5.1连接MySQL服务器MySQL可以对用户的密码进行管理,用户可以添加密码,也可以修改密码。如果用户原先没有密码,现在需要设置密码,可以使用带password参数的mysqladmin命令。命令格式如下:mysqladmin–u用户名password新密码如果用户想要对已经设置的密码进行更改,可以使用带p参数和password参数的mysqladmin命令,该命令格式如下:mysqladmin-u用户名-p旧密码password新密码12.5.3密码管理为数据库系统添加新用户,并赋予该用户对数据库一定的访问权限,使用grant命令。命令格式如下:grant权限on数据库.*to用户名@登录主机identifiedby\“密码\”;grantselect,insert,update,deleteon*.*tojone@\%\Identifiedby\pc25\;12.5.4增加新用户为了方便用户命令的输入,MySQL保存了用户输入的命令的历史记录。用户可以使用光标上下键调出以前输入过的命令。12.5.5命令分行MySQL的命令使用分号作为结束标志,所以用户输入命令时,回车后发现忘记加分号,命令并不会被提交给系统执行,需要用户输入一个分号。当分号输入并回车后命令才提交给数据库系统执行。12.5.6命令历史记录可以使用showdatabase命令显示数据库系统中的数据库列表。命令的格式为:showdatabases;12.5.7显示数据库列表如果要显示库中的数据表,首先必须先打开数据库,打开数据库使用use命令,use命令的用法如下:use数据库名;打开数据库以后就可以显示数据库中的所有表了。显示数据库种所含的表使用showtables命令,命令的格式为:showtables;12.5.8显示数据库中的数据表显示数据表的结构使用describe命令,该命令显示表包含哪些属性,每个属性是什么数据类型,占用多少空间等信息。该命令的用法如下:describe表名;12.5.9显示数据库的表结构新建数据库使用createdatabase命令。该命令非常简单,用法如下:createdatabase库名;12.5.10新建数据库新建数据库表也要先打开数据库,打开数据库也是use命令,打开数据库之后就可以使用createtable命令新建表了。createtable命令用法如下:createtable表名(字段设定列表);12.5.11新建数据库表删除数据库或表使用drop命令。删除数据库使用dropdatabase,删除表使用droptable。这两个命令的用法如下:dropdatabase库名;droptable表名;12.5.12删库和删表将表中记录清空使用delete命令,该命令的用法如下:deletefrom表名;deletefromstudentwhereage25;12.5.13将表中记录清空显示表中的记录使用select命令。select命令用法如下:select*from表名where条件;select*fromstudentwhereage25;12.5.14显示表的记录向表中插入记录,使用insert命令。insert命令用法如下:insertinto表名属性1,属性2,…,属性nvalues(属性1的值,属性2的值,…,属性n的值);insertintostudentname,age,address,entertimevalues('张三',25,'北京市海淀区',2009-09-01);12.5.15向表中插入记录本节将介绍如何使用MySQL进行数据的导入,以及数据库的备份方法。1.将文本数据导入到数据库中loaddatalocalinfile\文件名\intotable表名;loaddatalocalinfile\student.txt\intotablestudent;3李四23北京市中关村2009-09-104赵五26上海市长宁区2010-03-012.备份数据库mysqldump--opt数据库名文本文件名mysqldump--optschoolschool.db12.5.16MySQL数据导入和备份Linux系统下MySQL数据库一般都用做服务器的后台数据库。PHP下操作MySQL数据库的过程一般包括以下几个步骤:将SQL语句赋值给某个字符串变量执行SQL语句如果是select语句,则从游标当前位置读取一条记录的数据12.6在程序中操作MySQL数据库$query=sprintf(select*from%swhereusername='%s',$table,$UserName);$result=@mysql_query($query);$row=@mysql_fetch_array($result);$logtimes=$row['visittimes'];if($logtimes==0){$time=@date(Y:n:jG:i:s);$query=sprintf(update%sSETvisittimes=1,lasttime='%s',whereusername=’%s’,$table,$time,$UserName);if(!@mysql_query($query)){$err=mysql_errno();}}else{$time=@date(Y:n:jG:i:s);$query=sprintf(update%sSETvisittimes=visittimes+1,lasttime=’%s’,whereusername=’%s’,$table,$time,$time,$UserName);@mysql_query($query);}12.6在程序中操作MySQL数据库Oracle是目前使用最为广泛的数据库管理系统,由于其安全性非常好,在金融、证券、教育等多个领域得到广泛使用。随着熟悉Linux系统的用户越来越多,Oracle也随之推出了Linux下的数据库版本。12.7安装Oracle数据库系统安装Oracle11g的主机,物理内存最好为1G以上,交换区的大小设为内存的2倍。由于Oracle本身需要的硬盘空间比较大,而且安装过程中还需要临时空间,所以硬盘剩余空间最好在5GB以上。12.7.1安装Oracle11g的硬件条件Oracle11g有多个版本可供选择:标准版1、标准版和企业版,用户可以根据实际情况进行选择。所有这些版本都使用相同的通用代码库构建,这意味着用户的数据库管理软件可以从规模较小的单一处理器服务器扩展到多处理器服务器集群,而无需更改一行代码。12.7.2下载Oracle11g的安装文件建立一个专门用于管理Oracle的用户和用户组。Oracle安装时需要其它一些软件包,因此在安装前应进行检查,如果没有安装则要先进行安装。所需的软件包如下所示:binutils-2.17.50.0.6compat-libstdc++-33-3.2.3…unixODBC-2.2.11unixODBC-devel-2.2.11安装Oracle还需要对系统的核心参数进行调整,如下所示:kernel.shmall=2097152…配置一些Oracle常用的环境变量,如下所示:exportORACLE_BASE=/opt/OracleexportORACLE_HOME=$ORACLE_BASE/product/11.2.0…12.7.
本文标题:Linux从入门到提高-第12章--数据库服务器
链接地址:https://www.777doc.com/doc-7534801 .html