Server 2008 R2 ve Server 2012 yedek alma ve kurma

Merhaba,

Windows Server’dan,  yedek alıp tekrar yüklemek.

Başlat –> Çalıştır — cmd(Yönetici olarak çalıştırmak gereklidir.)

Sürücü üzerindeki tüm yedekleri görmek için;

wbadmin get versions

Yedekleme işlemi için;

WBADMIN START BACKUP -backupTarget:<BackupTargetLocation> | <TargetNetworkShare>  -inclulde:<ItemsToInclude> -allCritical -vvsFull -quit

Örnek :

WBADMIN START BACKUP -backupTarget:d: -include:c: -allCritical -vssFull -quiet

Bura da full yedek alıp d: sürücüne yedeklemektedir.

Geri yükleme işlemi için

wbadmin get versions  -backupTarget: <BackupDriveLetter>:

wbadmin get versions -backupTarget: <Yüklenen sürücünün yeri>:

Örnek :

wbadmin get versions -backupTarget:d:

Bu seçtiğiniz yerde yüklü olan yedekleme dosyasını görüyorsunuz.

wbadmin 1.0 – Yedekleme komut satırı aracı
(C) Telif Hakkı 2004 Microsoft Corp.

Yedekleme zamanı: 09.03.2018 09:05
Yedekleme hedefi: 1394/USB Disk, etiketi: E:
Sürüm kimliği: 03/09/2018-07:05
Kurtarılabilir: Birim(ler), Dosya(lar), Uygulama(lar), Tam Kurtarma, Sistem Durumu

wbadmin start systemstaterecovery –<Version Identifier>: -backupTarget:<Sürücü>

For example:
C:\Users\Administrator>wbadmin start systemstaterecovery -version:03/09/2018-07:05 – backupTarget:sürücü-harfi

 

mysql limit

 

Merhaba

ID
1 -- ilk kaydın indeksi 0 olarak başlar.
2
3
4
5
6

Mysql’de istenilen aralıkta veri getirme işlemi için ;

SELECT * FROM <Table> limit <Başlangıç ID değeri>,<Getirilecek değer kadar>

Örnek olarak

LIMIT 0, 3
-- Gelen sonuç id 'leri : 1,2,3
LIMIT 1, 3
-- Gelen sonuç id 'leri : 2,3,4

Php explode

Merhaba ,

İstenilen değerden öncesini alma

Örneğin ;

Sadece illeri almak istediğimizde;

Ankara/Turkiye

İstanbul/Türkiye

İzmir/Türkiye

 

<?php

$iller=array(‘Ankara/Turkiye’,’istanbul/Turkiye’,’izmir/Turkiye’);

foreach($iller as &$r){
$r = explode(“/”, $r);
echo $r[0];
echo “<br>”;
}

 

mysql id sıralama ve hata code 1175

Mysql ‘ deki amacım test yaptığım veri tabanındaki tablo ‘ nun id ‘sini tekrar sıralamak. Tablonuzun içinde hiç veri yoksa işlem kolay

ALTER TABLE DenemeDb.TestTb AUTO_INCREMENT = 1;

İçinde veri varsa burada hata alıyoruz.

Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect. 0.000 sec

SET SQL_SAFE_UPDATES=0;

SET @count = 0;

UPDATE DenemeDb.TestTb SET TestTb.id = @count:= @count + 1;

SET SQL_SAFE_UPDATES=1;

Bu şekilde istediğimiz tablonun id ‘sini tekrardan 1 den başlayarak sıralıyoruz.

app.config ve web.config şifreleme ve şifre çözümü

İyi Günler

Karşılaştığım sıkıntı,  yazdığım bir uygulamanın içinde bulunan app.config dosyasının içeriklerinin şifrelenmesi ve kullanımıdır.

Kısaca app.config ve web.config , uygulamanın yapılandırma dosyasıdır ve  Xml dosya türündedir . Asıl amacı, projenin dışarıdan değişmesi istenilen değişkenlerini rahatlıkla, tekrar derlemeden değiştirmektir.

Örnek olarak ;

Uygulamamızın kullandığı bir pdf derleyici var. Her seferinde, programın adını ve yolunu kullandığımız her yerde değiştirmekle uğraşacağımıza app.config üzerinde belirterek tekrardan kurtuluruz.


   Kod tarafında,  yolun değişmesi ya da pdf derleyicisinin markası fark etmeden istediğimiz zaman çağırabiliriz.

using System.Configuration

System.Configuration (referansta yoksa ekleyin)

Örnek 2;

Veritabanı’na bağlandığımız connection içeriğini değiştirmek istiyorsak (Veri tabanı adı, ip, port… vb);

Kod tarafında, veritabanına bağlantı yaptığımız her yerde connection ‘ı  değiştirmemiz ve tekrar derlememiz gerekir. Bunun yerine  app.config üzerinde bir kez tanımlayıp kod tarafında belirttiğimiz her yerde kullanabiliriz. Önerilen bu yöntemin faydası, gereksiz kod tekrarından ve tekrar derlemeye ihtiyaç duymadan uygulamamızın çalışmasını sağlamaktır.

app.config :

Kod tarafında erişmek için;

 

 

Asıl sorunumuz ise, App.config içerisinde istediğimiz alanları şifrelemektir (ben connectionString alanın şifrelemek istiyorum).

Şifreleme;

1-Projemizin içindeki app.config dosyanın adını web.config olarak değiştiriyoruz (Değiştirmeden önce bir yedek alınız.İşlem sonunda eski adını geri vereceğiz).

2-  Windows + R (Çalıştır) alanına cmd yazıp çalıştırıyoruz.

3- cmd ekranına   cd C:\Windows\Microsoft.NET\Framework\v2.0.50727   yazarak çalıştırıyoruz.

4- Açılan dosyanın içine,

aspnet_regiis.exe -pef  “xml şifrelemek istenen tag” “projenin web.config yolu”

aspnet_regiis.exe -pef “connectionStrings” “C:\Users\Tosun\Desktop\ConnectToAccountancy\ConnectToAccountancy”  işlemi çalıştıralım.

connectionStrings = şifrelemek istediğimiz tag (Ben veritabanı şifreliyorum);

Sonuç;

5- Adını değiştirdiğimiz app.config eski haline getiriyoruz.

app.config  yada web.config dosyasının içine bakıyoruz. Kod tarafında bir şey yapmamıza gerek kalmadan net framework çözümlüyor

Kod tarafında connectionString bu şekilde erişiyoruz. ConnectionString de “name” verdiğimiz adı unutmayın!!!

string connection=ConfigurationManager.ConnectionStrings["HeroData"].ToString();

 

Şifreyi kaldırma;

 

1- app.config adını web.config olarak değiştiriyoruz.

2- windows + R (Çalıştır) alanına cmd yaz ve çalıştır.

3-  cd C:\Windows\Microsoft.NET\Framework\v2.0.50727   çalıştır.

4- aspnet_regiis.exe -pdf “connectionStrings” “C:\Users\Tosun\Desktop\ConnectToAccountancy\ConnectToAccountancy”

5 -web.config adını app.config tekrar eski halina getirelim. Bu şekilde connectionString tekrar görmemize sağlar.

sql tekrar kayıt bulma

İyi günler

Sql ‘de  tekrar eden kayıtları(mükerrer kayıt) bulma

Örnek bir tablo oluşturalım.

1-Kullanıcı adından bir tablo oluşturup(Şekil – 1) ve içini dolduralım.(Şekil – 2)

Şekil – 1

Şekil – 2

2- Oluşturduğumuz kayıtta tekrar eden kayıtları  ve  adlarını da görmek için alttaki kodu yazalım.

SELECT kullanici.adi, COUNT(kullanici.adi) AS TekrarEdenSayi FROM kullanici

GROUP BY adi

HAVING ( COUNT(adi) > 1 );

 

Sonuç olarak yandaki şekilde dönecektir.

 

 

 

3-Karışık bir tablomuzda tekrar etmeyen kayıtları almak istediğimizde

SELECT * FROM kullanici
GROUP BY adi
HAVING ( COUNT(adi) = 1 );

Mysql (uzak ve yerel ağ) bağlantı sorunu

İyi günler

Mysql’e yerel ağdan ve uzaktan bağlanma sorununu  gidermek için yapılması gerekenler:

1- Mysql’e kurulu olduğu makine sabit ip verilmeli.

2-Mysql’in kurulu olduğu makinada port açıkmı kontrol edilmeli.Bunun için;

Başlat —> çalıştır —> cmd —> netstat –  a  yaparak pcdeki portlar dinlenilir.

connection_1Bende ,3306 portu açık “0.0.0.0:3306” bu şekilde olursa haberleşme gerçekleşiyor demektir.

 

3-  Sql sorgu sayfasında aşağıdaki komutları çalıştıralım. 
(Güvenlik için root dışında başka bir kullanıcı tanımlamak gerekli)

a) GRANT ALL PRIVILEGES ON *.* TO 'kullanıcıadı'@'%' IDENTIFIED BY 'şifre'; 
('%' yazan dış ve ya yerel ip yazılabilir. )

b) FLUSH PRIVILEGES;

4- Bağlantı düzgün çalışabilmesi için root ‘a verilen şifre dışında başka bir şifre verilmeli.