管理密码 (MySQLToSQL)

本文旨在介绍保护数据库密码的方法以及跨服务器导入或导出密码的过程。

保护密码

可以通过 SSMA 保护数据库的密码。

按照以下过程创建安全连接:

使用以下三种方法之一指定有效的密码:

  1. 明文:在“密码”节点的值属性中键入数据库密码。 该节点位于脚本文件或服务器连接文件“服务器”部分的服务器定义节点下。

    明文密码不安全。 因此,控制台输出中会显示以下警告消息:“服务器 <server-id> 密码以不安全的明文形式提供,SSMA 控制台应用程序提供了通过加密来保护密码的选项,请参阅 SSMA 帮助文件中的-securepassword 选项了解详细信息。”

    加密密码:在本例中,指定的密码以加密形式存储在本地计算机的的 ProtectedStorage.ssma 中。

    • 保护密码

      • 在命令行执行 SSMAforMySQLConsole.exe-securepassword 和 -add 开关,该命令行会传递服务器连接或包含服务器定义部分中密码节点的脚本文件。

      • 出现提示时,系统会要求用户输入数据库密码并加以确认。

        服务器定义 ID 及其相应的加密密码存储在本地计算机的文件中

        示例 1

        1. 指定密码

        2. C:\SSMA\SSMAforMySQLConsole.EXE -securepassword -add all -s "D:\Program Files\Microsoft SQL Server Migration Assistant for MySQL\Sample Console Scripts\AssessmentReportGenerationSample.xml" -v "D:\Program Files\Microsoft SQL Server Migration Assistant for MySQL\Sample Console Scripts\ VariableValueFileSample.xml"

        3. 输入 server_id“XXX_1”的密码:xxxxxxx

        4. 重新输入 server_id“XXX_1”的密码:xxxxxxx

        示例 2

        1. C:\SSMA\SSMAforMySQLConsole.EXE -securepassword -add "source_1,target_1" -c "D:\Program Files\Microsoft SQL Server Migration Assistant for MySQL\Sample Console Scripts\ServersConnectionFileSample.xml" - v "D:\Program Files\Microsoft SQL Server Migration Assistant for MySQL\Sample Console Scripts\ VariableValueFileSample.xml" -o

        2. 输入 server_id“source_1”的密码:xxxxxxx

        3. 重新输入 server_id“source_1”的密码:xxxxxxx

        4. 输入 server_id“target_1”的密码:xxxxxxx

        5. 重新输入 server_id“target_1”的密码:xxxxxxx

    • 删除加密密码

      在传递服务器 ID 的命令行执行 SSMAforMySQLConsole.exe-securepassword-remove 开关,从本地计算机上的受保护存储文件中删除加密密码。

      示例:

      C:\SSMA\SSMAforMySQLConsole.EXE -securepassword -remove all
      C:\SSMA\SSMAforMySQLConsole.EXE -securepassword -remove "source_1,target_1"  
      
    • 列出密码已加密的服务器 ID

      在命令行执行 SSMAforMySQLConsole.exe-securepassword-list 开关,列出密码已加密的所有服务器 ID。

      示例:

      C:\SSMA\SSMAforMySQLConsole.EXE -securepassword -list  
      

    注意

    1. 脚本或服务器连接文件中提及的明文密码优先于安全文件中的加密密码。
    2. 如果服务器连接文件或脚本文件的服务器部分中不存在密码,或者本地计算机上未对密码进行保护,控制台会提示输入密码。

导出或导入加密密码

使用 SSMA 控制台应用程序,可将本地计算机上文件中存在的加密数据库密码导出到受保护的文件,反之亦然。 该应用程序有助于让加密密码与计算机独立开来。

导出功能从本地受保护的存储中读取服务器 ID 和密码,并将信息保存在加密文件中。 系统会提示用户输入安全文件的密码。 务必确保输入的密码长度为 8 个或更多字符。 此安全文件可在不同的计算机之间移植。

导入功能从安全文件读取服务器 ID 和密码信息。 系统会提示用户输入安全文件的密码,并将信息追加到本地受保护的存储中。

导出示例:

  1. 导出密码

  2. 输入用于保护导出文件的密码

  3. C:\SSMA\SSMAforMySQLConsole.EXE -securepassword -export all "machine1passwords.file"

  4. 输入用于保护导出文件的密码:xxxxxxxx

  5. 请确认密码:xxxxxxxx

  6. C:\SSMA\SSMAforMySQLConsole.EXE -p -e "MySQLDB_1_1,Sql_1" "machine2passwords.file"

  7. 输入用于保护导出文件的密码:xxxxxxxx

  8. 请确认密码:xxxxxxxx

导入示例:

  1. 导入加密密码

  2. 输入用于保护导入文件的密码

  3. C:\SSMA\SSMAforMySQLConsole.EXE -securepassword -import all "machine1passwords.file"

  4. 输入用于从加密文件导入服务器的密码:xxxxxxxx

  5. 请确认密码:xxxxxxxx

  6. C:\SSMA\SSMAforMySQLConsole.EXE -p -i "MySQLDB_1,Sql_1" "machine2passwords.file"

  7. 输入用于从加密文件导入服务器的密码:xxxxxxxx

  8. 请确认密码:xxxxxxxx

另请参阅

执行 SSMA 控制台 (MySQL)