Vous devez depuis le serveur MySQL autoriser d'être accédé par une autre machine. Pour cela, ouvrez une console MySQL et tapez:
GRANT ALL ON *.* to root@'192.168.1.196' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
Une fois le connector installé, localisez la DLL MySQL.Data.dll (normalement localisée a C:\Program Files\MySQL\MySQL Connector Net
Il faut alors charger l'assemblie dans la session Powershell comme ceci :
[system.reflection.Assembly]::LoadFrom(“C:\Program Files\MySQL\MySQL Connector Net 6.4.4\Assemblies\v2.0\MySQL.Data.dll”)
Puis voici deux petites commandes similaires au PHP:
function mysql_connect([string]$ip,[string]$Login,[string]$Password,[string]$Database) { $dbconnect = New-Object MySql.Data.MySqlClient.MySqlConnection $dbconnect.ConnectionString = “server=$ip;user id=$login;password=$password;database=$database;pooling=false” $dbconnect.Open() $global:db = $dbconnect $dbconnect } function mysql_query([string]$Query,[MySql.Data.MySqlClient.MySqlConnection]$Db) { $sql = New-Object MySql.Data.MySqlClient.MySqlCommand if($db -eq $null) { if($global:db -eq $null) { throw "Pas de connexion spécifiée" } else { $db = $global:db } } if($db.State -ne "Open") { #throw "Connexion spécifié non établie" # on ré-ouvre la connexion car elle peut-être fermée... $db.Open() } $sql.Connection = $db $sql.CommandText = $query $sql.ExecuteNonQuery() }
Que l'on utilise comme ceci :
$dbconnect = mysql_connect -Ip 192.168.1.243 -Login "root" -Password "azerty" -Database "stock" mysql_query -Query "insert into connexion VALUES (NULL, '$mavar_powershell', NOW())"