added odbc, cdate, elasticsearch, postgresql
This commit is contained in:
parent
e14201467c
commit
4605a4d123
1 changed files with 117 additions and 1 deletions
118
README.md
118
README.md
|
|
@ -40,6 +40,10 @@
|
|||
- [MySQL](#MySQL)
|
||||
- [MSSQL](#MSSQL)
|
||||
- [InfluxDB](#InfluxDB)
|
||||
- [Elasticsearch](#Elasticsearch)
|
||||
- [CData](#CData)
|
||||
- [ODBC](#ODBC)
|
||||
- [PostgreSQL](#PostgreSQL)
|
||||
- [WMI](#WMI)
|
||||
- [Regedit](#Regedit)
|
||||
- [Performance](#Performance)
|
||||
|
|
@ -3694,6 +3698,114 @@ $Service_Name = "PerformanceTo-InfluxDB"
|
|||
& $NSSM_Path install $Service_Name $powershell_Path -ExecutionPolicy Bypass -NoProfile -f $Script_Path
|
||||
Get-Service $Service_Name | Start-Service
|
||||
```
|
||||
# Elasticsearch
|
||||
|
||||
`Install-Module -Name Elastic.Console -AllowPrerelease` https://github.com/elastic/powershell/blob/master/Elastic.Console/README.md \
|
||||
`Get-Command -Module Elastic.Console` \
|
||||
`Get-ElasticsearchVersion` \
|
||||
`Set-ElasticsearchVersion 7.3.0` \
|
||||
`Invoke-Elasticsearch` REST API запросы
|
||||
|
||||
# CData
|
||||
|
||||
https://www.powershellgallery.com/profiles/CData \
|
||||
https://www.cdata.com/kb/tech/elasticsearch-ado-powershell.rst
|
||||
|
||||
`Install-Module ElasticsearchCmdlets` https://www.powershellgallery.com/packages/ElasticsearchCmdlets/23.0.8565.1 \
|
||||
`Import-Module ElasticsearchCmdlets` \
|
||||
`Get-Command -Module ElasticsearchCmdlets`
|
||||
```
|
||||
$elasticsearch = Connect-Elasticsearch -Server "$Server" -Port "$Port" -User "$User" -Password "$Password"
|
||||
$shipcity = "New York"
|
||||
$orders = Select-Elasticsearch -Connection $elasticsearch -Table "Orders" -Where "ShipCity = `'$ShipCity`'" # поиск и получение данных
|
||||
$orders = Invoke-Elasticsearch -Connection $elasticsearch -Query 'SELECT * FROM Orders WHERE ShipCity = @ShipCity' -Params @{'@ShipCity'='New York'} # SQL запросы
|
||||
```
|
||||
### ADO.NET Assembly
|
||||
|
||||
`Install-Package CData.Elasticsearch` https://www.nuget.org/packages/CData.Elasticsearch \
|
||||
`[Reflection.Assembly]::LoadFile("C:\Program Files\PackageManagement\NuGet\Packages\CData.Elasticsearch.23.0.8565\lib\net40\System.Data.CData.Elasticsearch.dll")`
|
||||
```
|
||||
$connect = New-Object System.Data.CData.Elasticsearch.ElasticsearchConnection("Server=127.0.0.1;Port=9200;User=admin;Password=123456;")
|
||||
$connect.Open()
|
||||
$sql = "SELECT OrderName, Freight from Orders"
|
||||
$da = New-Object System.Data.CData.Elasticsearch.ElasticsearchDataAdapter($sql, $conn)
|
||||
$dt = New-Object System.Data.DataTable
|
||||
$da.Fill($dt)
|
||||
$dt.Rows | foreach {
|
||||
Write-Host $_.ordername $_.freight
|
||||
}
|
||||
```
|
||||
### UPDATE
|
||||
```
|
||||
Update-Elasticsearch -Connection $Elasticsearch -Columns @('OrderName','Freight') -Values @('MyOrderName', 'MyFreight') -Table Orders -Id "MyId"
|
||||
|
||||
$cmd = New-Object System.Data.CData.Elasticsearch.ElasticsearchCommand("UPDATE Orders SET ShipCity='New York' WHERE Id = @myId", $conn)
|
||||
$cmd.Parameters.Add(new System.Data.CData.Elasticsearch.ElasticsearchParameter("@myId","10456255-0015501366"))
|
||||
$cmd.ExecuteNonQuery()
|
||||
```
|
||||
### INSERT
|
||||
```
|
||||
Add-Elasticsearch -Connection $Elasticsearch -Table Orders -Columns @("OrderName", "Freight") -Values @("MyOrderName", "MyFreight")
|
||||
|
||||
$cmd = New-Object System.Data.CData.Elasticsearch.ElasticsearchCommand("INSERT INTO Orders (ShipCity) VALUES (@myShipCity)", $conn)
|
||||
$cmd.Parameters.Add(new System.Data.CData.Elasticsearch.ElasticsearchParameter("@myShipCity","New York"))
|
||||
$cmd.ExecuteNonQuery()
|
||||
```
|
||||
### DELETE
|
||||
```
|
||||
Remove-Elasticsearch -Connection $Elasticsearch -Table "Orders" -Id "MyId"
|
||||
|
||||
$cmd = New-Object System.Data.CData.Elasticsearch.ElasticsearchCommand("DELETE FROM Orders WHERE Id=@myId", $conn)
|
||||
$cmd.Parameters.Add(new System.Data.CData.Elasticsearch.ElasticsearchParameter("@myId","001d000000YBRseAAH"))
|
||||
$cmd.ExecuteNonQuery()
|
||||
```
|
||||
# ODBC
|
||||
|
||||
`Get-Command -Module Wdac` \
|
||||
`Get-OdbcDriver | ft` список установленных драйверов
|
||||
|
||||
https://www.elastic.co/guide/en/elasticsearch/reference/current/sql-client-apps-ps1.html
|
||||
```
|
||||
$connectstring = "DSN=Local Elasticsearch;"
|
||||
$sql = "SELECT * FROM library"
|
||||
$conn = New-Object System.Data.Odbc.OdbcConnection($connectstring)
|
||||
$conn.open()
|
||||
$cmd = New-Object system.Data.Odbc.OdbcCommand($sql,$conn)
|
||||
$da = New-Object system.Data.Odbc.OdbcDataAdapter($cmd)
|
||||
$dt = New-Object system.Data.datatable
|
||||
$null = $da.fill($dt)
|
||||
$conn.close()
|
||||
$dt
|
||||
```
|
||||
# PostgreSQL
|
||||
|
||||
Скачать и установить драйвер: https://www.postgresql.org/ftp/odbc/versions/msi/
|
||||
```
|
||||
$dbServer = "192.168.1.105"
|
||||
$dbName = "test"
|
||||
$dbUser = "admin"
|
||||
$dbPass = "admin"
|
||||
$port = "5432"
|
||||
[string]$szConnect = "Driver={PostgreSQL Unicode(x64)};Server=$dbServer;Port=$port;Database=$dbName;Uid=$dbUser;Pwd=$dbPass;"
|
||||
$cnDB = New-Object System.Data.Odbc.OdbcConnection($szConnect)
|
||||
$dsDB = New-Object System.Data.DataSet
|
||||
try {
|
||||
$cnDB.Open()
|
||||
$adDB = New-Object System.Data.Odbc.OdbcDataAdapter
|
||||
$adDB.SelectCommand = New-Object System.Data.Odbc.OdbcCommand("SELECT id, name, age, login FROM public.users" , $cnDB)
|
||||
$adDB.Fill($dsDB)
|
||||
$cnDB.Close()
|
||||
}
|
||||
catch [System.Data.Odbc.OdbcException] {
|
||||
$_.Exception
|
||||
$_.Exception.Message
|
||||
$_.Exception.ItemName
|
||||
}
|
||||
foreach ($row in $dsDB[0].Tables[0].Rows) {
|
||||
$row.login
|
||||
$row.age
|
||||
}
|
||||
```
|
||||
# WMI
|
||||
|
||||
### WMI/CIM (Windows Management Instrumentation/Common Information Model)
|
||||
|
|
@ -3763,7 +3875,11 @@ Label="Value"; Expression={$_.DeviceID}}, @{Label="AllSize"; Expression={
|
|||
`$sig_name = "auto"` \
|
||||
`Set-ItemProperty -Path $reg_path -Name "New Signature" -Value $sig_name` изменить или добавить в корне ветки (Path) свойство (Name) со значением (Value) \
|
||||
`Set-ItemProperty -Path $reg_path -Name "Reply-Forward Signature" -Value $sig_name`
|
||||
|
||||
```
|
||||
Windows Registry Editor Version 5.00
|
||||
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe]
|
||||
"Debugger"="\"C:\\Windows\\System32\\Taskmgr.exe\""
|
||||
```
|
||||
# Performance
|
||||
|
||||
`(Get-Counter -ListSet *).CounterSetName` вывести список всех доступных счетчиков производительности в системе \
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue