在本文的上半部分中,我们介绍了如何Linux版VMware vCenter支持MySQL。在本文的下半部分中,我们将继续介绍如何将微软SQL命令转换成MySQL命令。 将微软SQL命令转换到MySQL命令 下一步,我通过SQL配置代码并做了下列变更。我们开始研究微软SQL的定义表格,使MySQL表最接近微软SQL表。
以文件/usr/lib/vmware-vpx/VCDB_mssql.sql开始,我创建了一个后来VCDB_mysql.sql文件。 转换如下,然而这些变化将迫使vCenter只支持UTF – 8的字符串。你可以轻松地支持UTF – 16 ,但在规……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
在本文的上半部分中,我们介绍了如何Linux版VMware vCenter支持MySQL。在本文的下半部分中,我们将继续介绍如何将微软SQL命令转换成MySQL命令。
将微软SQL命令转换到MySQL命令
下一步,我通过SQL配置代码并做了下列变更。我们开始研究微软SQL的定义表格,使MySQL表最接近微软SQL表。以文件/usr/lib/vmware-vpx/VCDB_mssql.sql开始,我创建了一个后来VCDB_mysql.sql文件。
转换如下,然而这些变化将迫使vCenter只支持UTF - 8的字符串。你可以轻松地支持UTF - 16 ,但在规模指数为1000字节的MySQL,还是有一定限度的,并且有些类型的nvarchar领域会延伸并通过这个限制。
NTEXT类型转换为TEXT类型或BLOB类型 (如果你想支持UTF - 16 ) NVARCHAR类型转换为VARCHAR nvarchar类型转换为varchar
ACCESSIBLE和INTERVAL被视为MySQL的关键字所以他们需要使下面的转换:
INTERNAL to `INTERVAL`
ACCESSIBLE to `ACCESSIBLE`
最后,在Microsoft SQL Server和MySQL一些相同的功能,不会做同样的事情-特别是isnull函数。这是MySQL中的一个争论点,而不是等同于isnull函数的Microsoft SQL或Oracle的nvl函数。这一变化情况如下:
isnull change to ifnull
ISNULL changed to IFNULL
此外,与微软SQL相比,MySQL中的CAST函数有不同的参数。我不得不改变CAST,通过SIGNED类型而不是BIGINT ,来转换数字;因为在MySQL的CAST函数不支持BIGINT。此外,len不是一个有效的MySQL函数,所以我们还必须将上面提到的两个数据库声明修改为LENGTH,而不是LEN。
最后一个问题是大小写问题。一切在Linux是区分大小写的,包括MySQL的数据库名称,因此最后的变化是转换大小写。
vpx_sequence to VPX_SEQUENCE
vpx_object_type to VPX_OBJECT_TYPE
vpx_lock to VPX_LOCK
vpx_version to VPX_VERSION
使用以下命令提交新架构到MySQL数据库服务器。注意:你应该使用你的MySQL服务器的IP地址,替换IPOfMySQLServer 参数,你的MySQL用户名代替MySQLUserName参数 ,而且命令将要求输入密码。
mysql -p -h IPOfMySQLServer -u MySQLUserName < VCDB_mysql.sql
现在,剩下的所有都是解决一些STATS的存储程序,撤消和删除数据库。
但是,即使所有这些更新后, MySQL尝试仍然失败,因为vpxd服务不承认MySQL是一个有效的数据库。但是,通过Linux的一些具体的工具,我发现, PostgreSQL是一个有效的数据库,而且我会在下一篇文章中介绍它。
对于GNU / Linux的基于vCenter服务器来说,开源数据库的支持是必须的。
研究重点
那么这个研究告诉我们? MySQL数据库可以处理创造以及接口的存储过程,但你可以使用的UTF - 8字符的所有字符串变量是有限(这将影响亚洲vCenter用户) 。但是,如果一些变化了的基本表结构的UTF - 16 (多字节的Unicode )字符可以通过MySQL支持 。目前,虽然vCenter的Linux不接受使用MySQL ;将竭尽全力不让其使用。显然,仍有一些工作要做,但是最难的部分——找到合适的数据库版本,以及如何将ODBC连接到数据库、架构的端口和视图现在已经完成。
相关推荐
-
做CTO最重要的技能是什么?是写代码吗?
不写代码能做好CTO吗?
-
pppcloud支持哪些系统镜像?
全ssd云主机平台pppcloud支持多达40种镜像,中秋节期间注册即送8.15现金券,www.pppclou […]
-
从五方面考虑用VMware vCenter appliance还是Windows?
管理员在决定是否使用virtual appliance vCenter之前,需要考虑到其在提供诸多优势的同时,也存在一些局限性。
-
容器的主机操作系统有多重要?
运行在该操作系统之上的所有容器将共享相同的操作系统内核,因此容器提供了独特的福利与脆弱性。