您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
 
   
 
 
     
   
 订阅
  捐助
在 Bluemix 上管理 MySQL 和 PostgreSQL 数据库
 
作者:车 鑫 来源:IBM 发布于:2015-5-21
  2853  次浏览      14
 

Bluemix 提供了 MySQL 和 PostgreSQL 的数据库服务,用户可以直接调用数据库,带来了使用上的便利,但用户目前在 Bluemix 上无法作为管理员直接管理数据库。本文主要介绍如何在 Bluemix 的云平台上管理您的数据库。

本文适用范围

Bluemix 并没有提供一个方案用来在线管理您创建的数据库,如 MySQL,PostgreSQL 等。当用户在 Bluemix 上创建了数据库,我们需要一个解决方案去在线管理数据库。本文主要解决在如何 Bluemix 云平台上直接管理您创建的 MySQL 和 PostgreSQL 后台数据库,配置完成后,可以完成数据库的增加、删除、修改和查询等基本任务,可以允许您运行 SQL 脚本。

Bluemix 的数据库服务简介

Bluemix 平台让开发人员、企业和最终用户可以探索云应用程序的功能,这些功能将推动下一代的云应用程序和服务。应用程序可以是传统应用程序、社交应用程序、移动应用程序或三者的结合,并包括大数据的要求。无论功能如何组合,构建于 Bluemix 之上的应用程序都将包含以下属性:

1.降低配置要求(应用程序或基础架构)

2.灵活的容量

3.自动的技术任务

4.多种工作负载类型

其中 Bluemix 平台提供了多种可供用户选择的数据库服务,如下图所示:

图 1.Bluemix 数据库服务

管理 MySQL 数据库

安装部署 phpMyadmin 到 Bluemix

phpMyadmin 是用 PHP 开发的一个免费的工具,用来通过 Web 管理 MySQL 数据库。phpMyadmin 支持很多版本的 MySQL 数据库。通过 phpMyadmin 的 Web 用户界面可以实现很多常用的数据库操作,如管理数据库(database)、表格(table)、列(column)、关系(relation)、索引(index)、用户(user)、权限(permission)等等,您还可以直接执行 SQL 语句。

由于 Bluemix 提供服务的目录中,并没有 PHP runtime 的支持,所以我们需要使用第三方提供的 buildpack 去支持 PHP 运行。下面将列出几个详细步骤去部署 phpMyadmin 应用程序。

由于我们需要用到 cf 工具去部署 Bluemix 应用,首先需要下载 cf 工具,可以从下面网址下载一个。https://github.com/cloudfoundry/cli/releases

下载 phpMyadmin 应用包,可以参考下面的网址。建议使用最新版本。http://www.phpmyadmin.net/home_page/downloads.php

上传 phpMyadmin 到 Bluemix 服务器,本文建议使用 mainifest.yml 来上传您的应用,将 mainifest.xml 编辑后放到 phpMyadmin 的根目录下。

mainifest.xml 内容可参考如下:

---
applications:
- name: phpadmin-demo
memory: 128M
instances: 1
host: phpadmin-demo
domain: mybluemix.net
path: .
buildpack: https://github.com/dmikusa-pivotal/cf-php-build-pack.git

内容解释:

name: app 的名字

memory: 分配的内存

host:app 的主机名

domain: Bluemix 域

buildpack: php 的 buildpack 路径

打开 CMD 命令行工具,进入到 phpMyadmin 的目录,运行命令 cf push。

cf push

如果看到下图所示的日志,就表明您的应用已经成功部署到 Bluemix 服务器。

图 2.上传 phpadmin-demo 应用

登录到您的 Bluemix 账户,应该可以看到应用已经成功运行。

图 3.phpadmin-demo 应用已经运行

创建一个 MySQL 服务

我们需要创建一个 MySQL 的数据库服务,并绑定到您刚刚创建的 phpadmin-demo 的程序上,通过简单的配置您就可以管理您的数据库。

创建 mysql 服务,在 CMD 窗口,请运行 cf create-service SERVICE PLAN SERVICE_INSTANCE。SERVICE 可以是 mysql,PLAN 可以是 100,SERVICE_INSTANCE 是您的数据库名字,如 mysql-100。命令行如下所示。本文使用命令行创建 MySQL 数据库,您也可以通过 Web UI 来完成这一个操作。

cf create-service mysql 100 mysql-100

绑定 mysql-100 到您的应用程序,请运行命令cf bind-service phpadmin-demo mysql-100 即可。

登陆到您的 Bluemix 账户,可以获取到 mysql 的管理员用户凭据,即可用来管理您的 mysql 数据库。

图 4. MySQL 凭据

访问您的应用程序的 URL http://phpadmin-demo.pngx.mybluemix.net/,使用上面得到的 MySQL 凭据登陆,就可以管理您的 MySQL 数据库。如下图所示:

图 5.phpMyadmin 登陆界面

图 6. phpMyadmin 管理界面

管理 PostgreSQL 数据库

安装部署 WebSQL 到 Bluemix 环境

WebSQL 是一个通过 web 管理数据库的最佳解决方案,其用户的操作界面几近和桌面端程序相同,您不用像使用 Web 程序通过切换页面来管理数据库,和您平时使用桌面的程序操作完全一样。您仅仅需要登陆到管理页面,既可以轻松的完成对数据库的操作和维护。目前 WebSQL 支持三种数据库平台,如 MySQL、SQLite 和 PostgreSQL。

您可以从如下网址下载最新的 WebSQL 程序,http://sourceforge.net/projects/mywebsql/files/stable/mywebsql-3.4.zip/download。

由于部署 WebSQL 同样需要 PHP 的支持,可以参照之前的 phpMyadmin 部署程序到 Bluemix 服务器,步骤基本相同,就不在此赘述。为了支持 PostgreSQL,您需要修改 config 下的 servers.php 文件以达到支持 PostgreSQL。需要添加代码从 Bluemix 环境去获得数据库的登陆凭据,并注释掉其他数据库服务,如果需要使用其他数据库服务,去掉注释字符即可。

代码示例如下所示:

/*
* Read MySQL service properties from _ENV['VCAP_SERVICES']
*/
$services = json_decode($_ENV['VCAP_SERVICES'], true);
//$service = $services['mysql-5.5'][0]; // if you choose the mysql service
$service = $services['postgresql-9.1'][0];//if use choose the postgresql-9.1
$host = $service['credentials']['hostname'];
$port=$service['credentials']['port'];
$SERVER_LIST = array(
/*'Localhost MySQL' => array(
'host' => 'localhost',
'driver' => extension_loaded('mysqli') ? 'mysqli' : 'mysql5'
),
'SQLite Databases' => array(
'host' => 'c:/sqlitedb/',
'driver' => 'sqlite',
'user' => 'root', // set this yourself
'password' => 'sqlite' // set this yourself
),
*/
'Localhost PostgreSQL' => array(
'host' => 'localhost',
'driver' => 'pgsql'
),
/*'MySQL Proxy Server' => array(
'host' => 'localhost:4040',
'driver' => 'mysql5'
),
'MySQL 4' => array(
'host' => 'localhost',
'driver' => 'mysql4'
),
*/
);

创建一个 PostgreSQL 服务

跟上面的 MySQL 一样需要创建一个 PostgreSQL 服务,可以通过 cf 工具的命令行创建,也可以通过 Web UI 创建,命令行如下所示:

cf create-service postgresql 100 postgresql-100

绑定此服务到您已经部署的 WebSQL 应用,就可以通过 WebSQL 的管理界面来管理您的数据库了。

通过前面 2 个案例的说明,您可以运用同样的方法在 Bluemix 上部署更多的应用支持不同的数据库。

 

   
2853 次浏览       14
相关文章

基于EA的数据库建模
数据流建模(EA指南)
“数据湖”:概念、特征、架构与案例
在线商城数据库系统设计 思路+效果
 
相关文档

Greenplum数据库基础培训
MySQL5.1性能优化方案
某电商数据中台架构实践
MySQL高扩展架构设计
相关课程

数据治理、数据架构及数据标准
MongoDB实战课程
并发、大容量、高性能数据库设计与优化
PostgreSQL数据库实战培训
最新课程计划
信息架构建模(基于UML+EA)3-21[北京]
软件架构设计师 3-21[北京]
图数据库与知识图谱 3-25[北京]
业务架构设计 4-11[北京]
SysML和EA系统设计与建模 4-22[北京]
DoDAF规范、模型与实例 5-23[北京]

MySQL索引背后的数据结构
MySQL性能调优与架构设计
SQL Server数据库备份与恢复
让数据库飞起来 10大DB2优化
oracle的临时表空间写满磁盘
数据库的跨平台设计
更多...   

并发、大容量、高性能数据库
高级数据库架构设计师
Hadoop原理与实践
Oracle 数据仓库
数据仓库和数据挖掘
Oracle数据库开发与管理

GE 区块链技术与实现培训
航天科工某子公司 Nodejs高级应用开发
中盛益华 卓越管理者必须具备的五项能力
某信息技术公司 Python培训
某博彩IT系统厂商 易用性测试与评估
中国邮储银行 测试成熟度模型集成(TMMI)
中物院 产品经理与产品管理
更多...