热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

主流Linux平台MySQL部署指南

现在点击新数据库名称,点击屏幕上方的“导入(Import)”按钮。在弹出的浏览器窗口中选择备份文件然后点击Go。经过此番操作,数据库备份将被自动导入新数据库当中。细说PHPhttp://www.xishuophp.com/

作为开源计算领域的老牌尖兵,MySQL一直充当着大量应用程序的后端数据库角色,从普通的网络监控框架到人气鼎盛的Facebook皆在此列。第一次尝试设置MySQL数据库对于门外汉来说似乎有些强人所难,但只要掌握几项基本概念并加以引导,大家将能够很快建立起属于自己的全新MySQL实例并投付运行,最终实现应用程序部署。

出于上手指南的基本定义,我们先假设各位读者对于Linux系统平台上的MySQL基本或者完全没有知识储备,然后把重点集中在如何对MySQL进行安装及配置,并进一步尝试将应用程序与数据库对接以保证其运行。像数据库编程及SQL语言等更深层次的MySQL话题则不在本文的讨论范围之内。

安装MySQL

首先,我们需要把MySQL安装到自己的系统当中。假设我们已经拥有一台仅安装了UbuntuFedora或者CentOS的服务器,接下来要做的则是利用软件包安装工具来获取各种必要软件并加以安装。

请注意,除了MySQL主代码我们可能还需要一些额外的软件包,这样才能确保大家的应用程序正常运作。举例来说,如果大家希望让MySQL与一款基于PHP的应用程序协作,我们就需要安装PHP MySQL软件包以保证PHP能够与MySQL服务器顺利对话。

不过在开始之前,我们还需要检查操作系统在安装过程中是否已经同时完成了MySQL的安装工作。在Fedora与CentOS系统中我们需要以root身份运行下列命令:

# rpm -qa | grep mysql

在Ubuntu中我们则运行以下命令:

$ sudo dpkg -l | grep mysql

如果输出的结果中包含mysql-server软件包,则MySQL已经安装完成。大家还需要确认php-mysql等针对应用程序的MySQL扩展包也被正确安装到位。

如果我们没有在列出的结果中看到MySQL,那么在Fedora与CentOS中需要以root用户身份使用YUM命令:

# yum install mysql-server php-mysql

经过这一步,我们就完成了MySQL服务器、客户端、必要软件包与库以及PHP MySQL扩展等项目的安装工作。

在Ubuntu方面,我们需要运行以下命令:

$ sudo apt-get install mysql-server php5-mysql

经过这一步,我们就完成了MySQL服务器与PHP MySQL扩展包的安装工作。另外,安装程序会提示我们为MySQL root用户设定密码并在完成安装前启动服务器。

在CentOS与Fedora方面,我们需要额外启动服务器并设定MySQL root用户密码:

$ su -

# service mysqld start

# mysqladmin password 

大家只要把以上范例中的部分替换为想要设定的密码即可。

现在,我们就可以开始创建MySQL的功能性服务器实例了。大家能够通过mysql客户端登入服务器以进行测试:

$ mysql -u root -p

现在系统会提示我们输入设定好的MySQL root用户密码,屏幕上显示的提示符为mysql>。这时我们开始着手登录到刚刚创建的实例中并准备对其进行配置。大家可以在mysql>提示符后输入quit命令登出MySQL服务器。

在进行下一步之前,我们需要保证MySQL正在对正确接口中的连接进行侦听。在默认情况下,Ubuntu会将MySQL设定为仅侦听本地主机地址。如果大家正在安装的应用程序与MySQL运行在同一台服务器上,这一设定倒不会引发什么问题,因为二者能够越过本地主机接口进行直接通信。然而一旦大家需要将这台MySQL服务器与其它服务器相连,我们就需要取消该限制。请注意,这个问题只发生在Ubuntu系统环境之下,Fedora与CentOS在安装过程中并不会限定本地主机地址。

为了实现Ubuntu系统环境下MySQL与其它系统的连通,我们需要对MySQL配置文件进行编辑。该文件位置为/etc/mysql/my.cnf。我们可以通过nano编辑器进行内容变更。

$ sudo nano /etc/mysql/my.cnf

文件被打开之后,大家向下滚动屏幕直到寻获bind-address内容,然后在命令行开头插入#注释符。这将会令MySQL在启动后忽略该配置行内容,进而允许服务器对来自所有IP地址及接口的连接进行侦听。反之对应,其它主机也会同时获得接入许可。

接Ctrl-O快捷键保存文件修改,再按Ctrl-X退出编辑器。现在我们需要重新启动MySQL服务器:

$ sudo service mysql restart

现在我们已经搞定一切准备工作,可以正式对MySQL服务器进行配置了。

MySQL基础配置

对于大多数应用程序而言,并不需要对MySQL的配置做出太多变更。我们可以根据需要对my.cnf文件中的参数进行调整,但具体调整方式取决于应用程序对于MySQL的实际要求。如果有必要做出变更,应用程序的安装手册中应该会列出详细条目。然而还有不少应用程序需要我们手动创建一套数据库,并为数据库手动分配用户名与密码,这样才能让应用顺利完成安装。在Ubuntu、Fedora或者CentOS系统中,我们都可以通过以下命令实现上述要求:

$ mysql -u root -p

接下来输入root密码并登录服务器实例。下面我们就开始创建数据库:

mysql> CREATE DATABASE 'mydatabase';

请注意,mydatabase前后使用的是重点符而非单引号。这条命令将创建一套名为MyDatabase的数据库。然后我们需要进行权限分配。我们可以为某一位用户分配受限权限,但大多数应用程序都要求拥有全部权限,因此我们可以再额外添加一个用户名并赋予其全部权限。

mysql> GRANT ALL PRIVILEGES on mydatabase.* TO myuser@localhost IDENTIFIED BY 'mypassword';

请注意,上述内容中的mypassword前后为单引号。

这将赋予名为myuser的用户全部权限,而密码则为mypassword。不过如果二者是在本地系统中生成的,那么数据库将只能识别由这套用户名及密码创建的连接。如果大家需要让另一台服务器与MySQL实例进行通信,我们还得额外指定IP地址或者主机名称。

mysql> GRANT ALL PRIVILEGES on mydatabase.* TO myuser@192.168.100.5 IDENTIFIED BY 'mypassword';

经过这一步,我们的数据库将允许IP地址为192.168.100.5的系统进行接入,用户名为myuser、密码则为mypassword。

现在大家可以利用MySQL客户端尝试新用户能否正常接入。如果我们的测试在运行着MySQL的服务器上进行,那么需要输入以下命令:

$ mysql -u myuser -p

如果我们要在另一套系统中进行测试,则需要指定要连接的服务器对象:

$ mysql -u myuser -h  -p

这里大家要在-h之后输入MySQL服务器的实际IP地址或主机名称。

如果一切顺利,那么我们应该能够正确登入实例,接下来要处理的就是应用程序的安装流程了。

大多数LAMP应用都具备指定的MySQL安装工具及引导说明。有些应用还拥有一款小型脚本,大家需要在命令行中加以运行来提前创建数据库架构以启动应用程序,不过也有一些采用基于Web的安装工具。我们需要认真阅读应用程序的安装说明,以确定需要对MySQL进行哪些预先设置以完成应用安装。

利用phpMyAdmin管理MySQL

完成应用程序的安装及测试工作之后,大家需要保留数据库上的标签,也可能打算对数据库进行高级管理。在大多数情况下,使用基于Web的工具能够简化数据库管理流程,帮助那些对于MySQL管理工作不太熟悉的用户顺利搞定一切。

phpMyAdmin就是其中之一,它是一款基于PHP的MySQL管理工具。phpMyAdmin提供了一套简单易用的Web GUI,能够执行几乎全部MySQL管理任务。在它的辅助下我们的生活将变得更加轻松愉快。

要在Fedora及CentOS上进行安装,我们需要以root身份运行以下命令:

# yum install phpmyadmin

而在Ubuntu方面,我们需要运行以下命令:

$ sudo apt-get install phpmyadmin

Ubuntu会提示处于使用状态下的Web服务器,这样它就可以自动对其进行配置。在大多数情况下,大家使用的都是Apache,所以除非各位确定自己要选择lighttpd或者其它Web服务器,否则都应按Apache进行设置。另外,Ubuntu还会提示我们为phpMyAdmin进行手动或者自动配置。除非大家习惯于进行手动配置,否则还是选择安全稳妥的自动配置比较保险——这一过程同样需要输入MySQL root密码。在此之后,Ubuntu将完成全部配置工作,并重新启动服务器。不过由于服务器的初始创建情况有所不同,有时候我们还需要安装Apache PHP模块,具体方式如下所示:

$ sudo apt-get install libapache2-mod-php5

在Fedora与CentOS系统平台上,我们需要做出一些细小改动以便在远程系统端访问phpMyAdmin。这里要再次使用nano对phpMyAdmin配置文件加以编辑:

# nano /etc/httpd/conf.d/phpmyadmin.conf

打开文件后,我们要在内容最末加入一行“Allow from 127.0.0.1”,然后输入允许访问的IP地址或范围。举例来说,如果我们输入“Allow from 192.168.1”,就意味着允许192.168.1.0到192.168.1.24的所有子风进行连接。大家可以多输入几行命令,将自己可能需要接入的IP地址或子网全部涵盖进来。

内容添加完成后,我们按下Ctrl-O保存文件并按下Ctrl-X退出编辑器。现在重新启动Apache:

# service httpd restart

在Fedora与CentOS系统平台上,我们还需要为phpMyAdmin配置添加Blowfish加密机制。这项工作也可以通过nano实现。

# nano /usr/share/phpMyAdmin/config.inc.php

(请注意:大家可以在phpMyAdmin目录下只能找到一个名为config.sample.inc.php的文件,如果是这样,请将其复制并保存为config.inc.php。)

找到如下内容:

$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

在两个引号之间输入加密内容,如下所示:

$cfg['blowfish_secret'] = 'SDJkjshdkfjhsdf9**&^%^&%'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

这段加密内容可以是任何字符,随意性最好大一些。大家不再需要在其它任何地方重新输入这段加密内容,这仅仅属于内部需要。还是老办法,Ctrl-O保存文件、Ctrl-X退出编辑器。

现在我们可以在服务器的Web浏览器上通过以下URL输入phpMyAdmin了。

http:///phpmyadmin

接入phpMyAdmin

在接入phpMyAdmin之后,大家首先面对的是一个登录对话框。在默认情况下,phpMyAdmin会优先与本地主机MySQL实例相连(而非远程实例),因此我们需要输入的用户名与密码需要同root用户或者拥有足够权限的其它用户设定相吻合。

登录成功后,大家应该会在屏幕左侧看到数据库列表,并在右侧看到配置及管理选项。点击左侧的数据库名称可以浏览数据库内容、添加或删除表及数据、导入及输出数据及数据库架构,或者执行其它各类管理任务。请大家千万不要进行任何自己不熟悉的操作,例如弃用(也就是删除)数据库等。

在上手phpMyAdmin之前,还有几项提示值得大家关注。首先要说的是如何对数据库进行备份,或者将其导出为本地系统中的文件。要实现这一目的,我们需要单击屏幕左侧的数据库名称、单击上方的“导出(Export)”选项。大多数情况下我们不需要对选项进行任何变更,只消点击文件选项底部紧挨着“另存为(Save as)”的按钮、在必要时选择压缩格式,然后点击“开始(Go)”即可。这时整个数据库都将被导出,并依选项进行压缩,最终通过浏览器下载到我们的计算机当中。

另一项实用技巧则正好与导出相反,也就是将数据从备份文件导入到新数据库中。首先,单击左上角的Home图标创建新数据库,然后点击“数据库(Database)”选项。在接下来的文本框中输入新数据库的名称,如果了解排序规则就按理解进行选择,然后点击“创建(Create)”。简简单单,屏幕左侧的列表中就多出一套新数据库来。

现在点击新数据库名称,点击屏幕上方的“导入(Import)”按钮。在弹出的浏览器窗口中选择备份文件然后点击Go。经过此番操作,数据库备份将被自动导入新数据库当中。

大家还可以利用phpMyAdmin创建并管理数据库用户。点击屏幕左上方的Home图标并选择“权限(Privileges)”。在这里我们可以通过填写资料表添加新用户,并为其指定用户名与密码。当然,这里创建出的用户拥有全局权限;如果大家只想为某个特定数据库设定用户,则取消所有复选框选项。用户创建好之后,再次单击权限选项,然后点击用户名右侧的“编辑(Edit)”图标。接下来在数据库特定权限中选择对应数据库,并根据需要为用户分配权限。大家可以通过“全选(Check All)”项目快速为用户赋予全部权限,也可以在必要时进行细节调整。

此外,phpMyAdmin也允许我们查看服务器运行状态。点击屏幕左上方的Home图标、点击“进程(Processes)”来查看活动MySQL连接与进程,然后点击“状态(Status)”来进一步掌握服务器流量、查询及变量统计等信息列表。如果某些项目存在潜在问题,phpMyAdmin会以红色标记出对应的统计数据——例如打开的表数量过大等。每个变量旁边都配有该变更的简短描述,有时候还会对可能出现问题的情况给出提示信息——例如表缓存值可能过小等。对于新人而言,这是一种了解MySQL服务器设置及其意义的绝佳方式。所有这些变量都可以在my.cnf文件中进行调整,不过其中有些变量也可以在服务器运行状态下直接加以修改。

要想正确地进行MySQL操作、调整、管理及维护等工作还要涉及到诸多细节,但这篇指南已经足以帮助初学者成功在操作系统上建立起属于自己的功能性MySQL服务器了——连基于Web的GUI管理机制都能搞定。大家也许还需要更多信息来照管好自己的MySQL数据库服务器,这里我留出MySQL参考手册的链接,希望能助各位读者朋友一臂之力(http://dev.mysql.com/doc/)。

原文链接:http://www.infoworld.com/d/applications/how-get-started-mysql-206984




推荐阅读
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • 本文介绍了在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一,尤其是在大规模系统中,数据库集群已经成为必备的配置之一。文章详细介绍了主从数据库架构的好处和实验环境的搭建方法,包括主数据库的配置文件修改和设置需要同步的数据库等内容。MySQL的主从复制功能在国内外大型网站架构体系中被广泛采用,本文总结了作者在实际的Web项目中的实践经验。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • 如何提高PHP编程技能及推荐高级教程
    本文介绍了如何提高PHP编程技能的方法,推荐了一些高级教程。学习任何一种编程语言都需要长期的坚持和不懈的努力,本文提醒读者要有足够的耐心和时间投入。通过实践操作学习,可以更好地理解和掌握PHP语言的特异性,特别是单引号和双引号的用法。同时,本文也指出了只走马观花看整体而不深入学习的学习方式无法真正掌握这门语言,建议读者要从整体来考虑局部,培养大局观。最后,本文提醒读者完成一个像模像样的网站需要付出更多的努力和实践。 ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • 如何更改电脑系统的自动校时服务器地址?
    本文介绍了如何通过注册表编辑器更改电脑系统的自动校时服务器地址。通过修改注册表中的数值数据或新建字符串数值的方式,可以将默认的时钟同步服务器地址更改为自己所需要的域名或IP地址。详细步骤包括双击时间区域,点击internet时间,勾选自动校正域名设置定时等操作。 ... [详细]
  • OCI连接MySQL_PLSQL Developer连接远程数据库OCI客户端安装方法
    本文介绍了使用OCI客户端连接MySQL和PLSQL Developer连接远程数据库的安装方法,避免了在本地安装Oracle数据库或类似的开发套件的麻烦,同时解决了PLSQL Dev连接远程Oracle时的配置问题。 ... [详细]
  • 大数据Hadoop生态(20)MapReduce框架原理OutputFormat的开发笔记
    本文介绍了大数据Hadoop生态(20)MapReduce框架原理OutputFormat的开发笔记,包括outputFormat接口实现类、自定义outputFormat步骤和案例。案例中将包含nty的日志输出到nty.log文件,其他日志输出到other.log文件。同时提供了一些相关网址供参考。 ... [详细]
author-avatar
mobiledu2502881047
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有