Powershell összekötése MySQL vagy MS SQL adatbázissal

Powershell összekötése MySQL vagy T SQL adatbázissal

  1. Nyisd meg a PowerShell programot adminisztrátori jogokkal. (Jobb kattintás -> Futtatás rendszergazdaként)
  2. Microsoft SQL esetén telepítsd a következő PowerShell csomagot (másold ki a parancsot):
Install-Module SqlServer
  1. MySQL esetén telepítsd a MySQL Connector segédprogramot (töltsd le, és telepítsd):
    1 – mysql-connector-net-8.0.25
  2. Nyisd meg a PowerShell programot.
  3. MySQL esetén illeszd be ezt a funkciót a szkriptedbe:
function Invoke-MySQL {
Param([Parameter(Mandatory = $true,ParameterSetName = '',ValueFromPipeline = $true)][string]$Query,[string]$database)

# Hozz létre egy adatbázist és egy felhasználót hozzá, legalább olvasási (select) joggal
# Add meg a mysql szerver és felhasználó adatait

$MySQLAdminUserName = 'felhasználónév'
$MySQLAdminPassword = 'jelszó'
$MySQLDatabase = $database
$MySQLHost = 'MySQL szerver IP címe vagy neve'
$ConnectionString = "server=" + $MySQLHost + "; port=3306; uid=" + $MySQLAdminUserName + "; pwd=" + $MySQLAdminPassword + "; database="+$MySQLDatabase

Try {
  [void][System.Reflection.Assembly]::LoadWithPartialName("MySql.Data")
  $Connection = New-Object MySql.Data.MySqlClient.MySqlConnection
  $Connection.ConnectionString = $ConnectionString
  $Connection.Open()

  $Command = New-Object MySql.Data.MySqlClient.MySqlCommand($Query, $Connection)
  $DataAdapter = New-Object MySql.Data.MySqlClient.MySqlDataAdapter($Command)
  $DataSet = New-Object System.Data.DataSet
  $RecordCount = $dataAdapter.Fill($dataSet, "data")
  $DataSet.Tables[0]
  }

Catch {
  throw "ERROR : Unable to run query : $query `n$Error[0]"
 }

Finally {
  $Connection.Close()
  }
}
  1. Kész! A következő paranccsal éred el a MySQL adatbázist:
# Ne feledd megadni a parancsban az adatbázisod nevét!

Invoke-MYSQL -database "adatbázisod_neve" -Query "SELECT * FROM TABLE"
  1. Microsoft SQL esetén a következő funkciót illeszd be a PowerShell szkriptedbe:
function MSSQL {
param($query, $database)

# Hozz létre egy adatbázist és egy felhasználót hozzá, legalább olvasási (select) joggal
# Add meg a Microsoft SQL szerver IP címét vagy nevét, az SQL "instance"-t egy "\" karakterrel elválasztva. 
# Majd add meg a felhasználód adatait

Invoke-Sqlcmd -ServerInstance "SZERVERIP\SQL" -Username "felhasználó" -Password "jelszó" -Database $database -Query $query
}
  1. Kész! A következő paranccsal éred el a Microsoft SQL adatbázist:
# Ne feledd megadni a parancsban az adatbázisod nevét!

MSSQL -database "adatbázisod_neve" -Query "SELECT * FROM TABLE"

Leave a Comment

Az e-mail-címet nem tesszük közzé.

hu_HUHungarian