跳到内容
必威体育论坛必威精装下载APPRedfin Solutions徽标必威体育论坛必威精装下载APPRedfin Solutions徽标 接触
一艘船困在海滩上

将Transact SQL数据库连接到Drupal

11月2022年11月,Drupal Community和Drupal Security团队将结束他们对Drupal 7的支持。到那时,所有Drupal网站都需要在Drupal 8上继续,继续接收社区的更新和安全修复。从Drupal 7到8的跳跃是一个棘手的迁移。它通常需要复杂的转换,将内容陷入旧系统中的内容,进入Drupal的新范式。如果您是Drupal迁移的新手,您可以阅读官方Drupal迁移API.,关注Mauricio Dinarte's31天的Drupal迁移入门系列,或观看Redfin解决方案的克里斯井给了必威体育论坛必威精装下载APP崩溃课程训练课程。此博客系列介绍了更高级的主题,如利基迁移工具,内容重组和各种自定义代码解决方案。要赶上,请阅读以前的博客帖子自定义迁移cron作业迁移自定义源插件

最常见于Drupal 8,您的迁移源将是CSV文件,JSON文件或其他Drupal数据库。在某些情况下,您的Drupal网站需要在更大的基础架构中共存。值得庆幸的是,有各种模块用于将DRUPAL与工具同步销售队伍禁区, 和收集。但是,并非一切都像那些用户友好的模块一样干净。本文将挖掘从Microsoft Server使用的迁移数据transact-sql.进入标准的Drupal 8网站。


与Drupal中的任何数据库一样,它开始了settings.php.文件。Transact-SQL数据库的基本设置如下所示:

$数据库['your_database_name'] ['default'] = array('database'=>'','用户名'=>'','password'=>'','prefix'=>'','host'=>'','端口'=>'','命名空间'=>'drupal \\ driver \\ database \\ sqlsrv','driver'=>'sqlsrv',);

“your_database_name”是密钥Drupal将用于引用此数据库,但它不需要匹配实际的数据库名称。其他凭据,如数据库,用户名,密码,前缀,主机和端口,需要根据您的特定设置和服务器填写,但是最后两个键更通用并引用数据库的类型。
默认情况下,Drupal使用MySQL数据库,因此“驱动程序”字段通常设置为“MySQL”。但是,Drupal本身不知道如何与Transact-SQL数据库通信,因此只需将“SQLSRV”设置为“SQLSRV”将抛出错误

提供支持,首先安装并启用SQL Server模块(SQLSRV)。但是,SQL Server模块中的“驱动程序”文件夹需要在Drupal根文件夹(通常称为“Web”或“Docroot”)上访问。有两种方法可以做到这一点:

  1. 手动将“驱动程序”文件夹从SQL Server模块(模块/ Contribl / SQLSRV /驱动程序)复制到Drupal根文件夹中。
  2. 创建一个符号链接(Symlink.)从Drupal根文件夹中的“驱动程序”文件夹,其中包含此“LN -S模块/ Contract / SQLSRV /驱动程序/驱动程序”的命令。Symlink允许模块在没有手动调整的情况下更新。

通过适当的凭据和连接,Drupal现在将能够从Transact-SQL数据库中读取。

现在可以写入实际迁移。没有核心迁移源插件,所以你需要写一个自定义源插件扩展了Drupalsqlbase。使用Drupal的动态查询API获取数据库的数据,确保至少一个字段可以用作每行的唯一标识符。写入源插件后,其余迁移将像往常一样工作。

Baidu