SQL Server 2005 tam metin arama yükseltme

Tam metin arama yükseltme SQL Server 2005için SQL Server 2012Kurulum sırasında yapılır ve ne zaman veritabanı dosyaları ve tam metin kataloglar önceki sürümünden SQL Server, geri yüklenen ya da kopyalanan Kopyala Veritabanı Sihirbazı'nı kullanarak bağlı.

Bu konuda tam metin arama yükseltme aşağıdaki yönleri ele SQL Server 2005:

  • Bir sunucu örneği yükseltme

  • Tam metin yükseltme seçenekleri

  • Tam metin seçme hakkında önemli noktalar yükseltme seçeneği

  • Bir veritabanını SQL Server'a 2012 yükseltirken geçirme tam metin dizinleri

  • SQL Server 2005 tam metin kataloğu 2012 SQL Server'a geri yükleme ilgili önemli noktalar

  • SQL Server 2012 için SQL Server 2005 veritabanı ekleme

Bir sunucu örneği yükseltme

Yerinde yükseltme, bir örneği için SQL Server 2012yan - eski sürümünü kurmak SQL Server, ve veri göç. Eğer yaşlı yorum-in SQL Server, tam metin araması yüklü, tam metin arama yeni bir sürümü otomatik olarak yüklenir. Yan yana yükleme anlamına gelir aşağıdaki bileşenlerin her biri düzeyi örneği var SQL Server.

  • Sözcük ayırıcılarını ve sözcük köklerini filtreleri
    Her örneği şimdi kendi, sözcük ayırıcılarını ve sözcük köklerini filtreleri kümesi yerine güvenerek bu bileşenleri işletim sistemi sürümünü kullanır. Bu bileşenler Ayrıca kayıt ve bir örneği başına düzeyinde yapılandırmak kolaydır. Daha fazla bilgi için Yapılandırma ve sözcük ayırıcılarını ve sözcük köklerini arama yönetmeve Yapılandırmak ve arama filtrelerini yönetme.

  • Filtre arka plan programı ana bilgisayar
    Tam metin filtre arka plan programı ana bilgisayar işlemlerini güvenle yükleme ve tam metin altyapısı bütünlüğünü tehlikeye atmadan dizin ve sözcük ayırıcılarını ve sözcük köklerini filtreleri gibi sorgu için kullanılan Genişletilebilir harici bileşenler sürücü vardır. Sunucu örneği, tüm parçacıklı filtreler ve tüm tek iş parçacıklı filtre için bir tek iş parçacıklı işlem parçacığı işlemi kullanır.

    [!NOT]

    SQL Server 2008(MSSQLFDLauncher) fdhost Başlatıcısı hizmeti için bir hizmet hesabı tanıttı. Bu hizmet, hizmet hesabı bilgilerini filtre arka plan programı ana bilgisayar işlemlerini belirli bir örneğini yayar SQL Server. Hizmet hesabını ayarlama hakkında daha fazla bilgi için bkz: Tam metin filtre Daemon Başlatıcısı için hizmet hesabını ayarlama.

De SQL Server 2005, her tam metin dizini bir filegroup ait, fiziksel bir yol vardır ve bir veritabanı dosyası olarak kabul edilir bir tam metin kataloğu bulunur. De SQL Server 2008ve sonraki sürümleri, bir tam metin kataloğu tam metin dizinleri grubu içeren mantıksal ya da sanal bir nesnesi. Bu nedenle, yeni bir tam metin kataloğu fiziksel yolu ile veritabanı dosyası olarak işlenmez. Ancak, herhangi bir tam metin kataloğu veri dosyalarını içeren yükseltilmesi sırasında aynı disk üzerinde yeni bir dosya grubu oluşturulur. Bu yükseltme sonrasında eski disk I/O davranış korur. Kök yolu varsa, herhangi bir tam metin dizini Bu kataloğu yeni filegroup içinde yer alıyor. Eski tam metin Katalog yolu geçersizse, yükseltme aynı filegroup temel tablo veya birincil filegroup bölümlenmiş bir tablo için tam metin dizini tutar.

[!NOT]

SQL Server 2005 Transact-SQLTam-metin katalogları belirtin ddl deyimleri düzgün çalışmaya devam eder.

Tam metin yükseltme seçenekleri

Bir sunucu örneği yükseltirken SQL Server 2012, kullanıcı arabirimi, aşağıdaki tam metin yükseltme seçeneklerden birini seçmenize olanak verir.

  • İçe aktarma
    Tam metin kataloglar alınır. Genellikle, ithalat önemli ölçüde yeniden hızlıdır. Örneğin, tek bir cpu kullanarak alma 10 kat yeniden daha hızlı çalıştırır. Ancak, alınan tam metin kataloğunu en son sürümüyle birlikte yüklenen yeni sözcük ayırıcılarını kullanmak değil SQL Server. Sorgu sonuçlarında tutarlılık sağlamak için tam-metin katalogları yeniden zorunda.

    [!NOT]

    Çok iş parçacıklı modda yeniden çalıştırabilir ve tüm CPU kullanacak şekilde yeniden izin verirseniz daha fazla 10 CPU kullanılabilir, yeniden alma daha hızlı çalışabilir.

    Tam metin katalog kullanılamıyorsa, ilişkili tam metin dizinlerini yeniden oluşturulur. Bu seçenek yalnızca kullanılabilir SQL Server 2005veritabanları.

    Alma tam metin dizini etkisi hakkında daha fazla bilgi için bkz: "Düşünceleri için seçme bir tam metin yükseltme seçeneği" Bu konudaki.

  • Yeniden oluşturma
    Tam-metin katalogları, yeni ve geliştirilmiş sözcük ayırıcılarını kullanarak yeniden oluşturulur. Dizinler yeniden oluşturuluyor biraz zaman alabilir ve önemli miktarda cpu ve bellek yükseltme sonrasında gerekli olabilir.

  • Sıfırlama
    Tam metin kataloglar sıfırlanır. Dan yükseltirken SQL Server 2005, tam metin kataloğu dosyaları kaldırılır, ancak tam metin kataloglar ve tam metin dizinleri için meta verileri korunur. Yükseltilen sonra tüm tam metin dizinlerini için değişiklik izlemeyi devre dışı bırakılır ve gezinmeyi otomatik olarak başlatılmaz. Yükseltme tamamlandıktan sonra el ile tam bir popülasyon yayın kadar Katalog boş kalır.

Tam metin seçme hakkında önemli noktalar yükseltme seçeneği

Yükseltme için yükseltme seçeneğini seçerken aşağıdakileri göz önünde bulundurun:

  • Sorgu sonuçlarında tutarlılık mi gerekiyor?

    SQL Server 2012yükler yeni ayırıcılarını kullanmak tam metin ve semantik arama kelime. Sözcük ayırıcılarını zaman dizin oluşturma ve sorgu zaman kullanılır. Tam metin kataloglar yeniden değil, arama sonuçlarınızı tutarsız olabilir. Sözcük ayırıcı tarafından bir önceki sürümünde farklı kırık bir ifade arar bir tam metin sorgu yayın, SQL Servergeçerli sözcük ayırıcısı, bir belge veya ifadesini içeren satırın değil alınması. Bunun nedeni, oluşturulmuş ifadeler sorgu kullanarak daha farklı mantık istimal kırık. Dizin zaman ve sorgu süresi davranışını böylece özdeş (yeniden) tam metin kataloglar ile yeni sözcük ayırıcılarını yeniden oluşturulacaktır için çözümdür. Bunun için önce yeniden oluştur seçeneğini seçebilirsiniz ya da alma seçeneği seçtikten sonra el ile yeniden oluşturabilirsiniz.

  • Tüm tam metin dizinlerini tamsayı tam metin anahtar sütunlar inşa edildi?

    Yeniden yükseltilen tam metin dizini bazı durumlarda sorgu performansını iç optimizasyonlar yapar. Özellikle, yeniden, temel tablo tam metin anahtar sütunu bir tamsayı veri türü olduğu tam metin dizinleri içeren tam metin kataloglar varsa, tam metin sorguları ideal performans yükseltme sonrasında başarmaktadır. Bu durumda kullanmanızı öneririz yeniden seçeneği.

    [!NOT]

    Tam metin dizinleri için SQL Server 2012, sütun tam metin anahtarını bir tamsayı veri türü olarak hizmet veren öneririz. Daha fazla bilgi için, bkz. Tam metin dizinlerini performansını.

  • Çevrimiçi sunucu örneği almak için öncelik nedir?

    Alma veya yükseltme sırasında yeniden yükseltilen ve çevrimiçi sunucu örneği geri kalanını elde gecikmeler cpu kaynaklarını, çok alır. Sunucuyu çevrimiçi olabildiğince kısa sürede önemli olduğu ve yükseltmeden sonra el ile nüfusu çalıştırmak için istekli eğer Reset uygundur.

SQL Server 2005 tam metin dizini aldıktan sonra tutarlı sorgu sonuçları sağlanması

Bir tam metin kataloğu yükseltirken alındıysa bir SQL Server 2005veritabanı SQL Server 2012, sorgu tam metin dizini içeriği arasındaki uyuşmazlıklar eski ve yeni sözcük ayırıcılarını davranışındaki farklılıklar nedeniyle ortaya. Bu durumda, tam metin dizini içeriği arasındaki sorguları Toplam eşleşme sağlamak için aşağıdaki seçeneklerden birini seçin:

  • Tam metin kataloğu tam metin dizini içeren yeniden (alter fulltext catalog catalog_name yeniden)

  • TAM bir popülasyon üzerinde tam metin dizini yayın (alter fulltext INDEX on table_nametam bir popülasyon başlatın).

Sözcük ayırıcılarını hakkında daha fazla bilgi için bkz: Yapılandırma ve sözcük ayırıcılarını ve sözcük köklerini arama yönetme.

Etkisiz sözcük dosyaları Stoplists için yükseltme

SQL Server 2005gürültü sözcükleri yerine stopwords içinde tarafından SQL Server 2008ve sonraki sürümleri. Ne zaman bir veritabanı yükseltilmiş için SQL Server 2012dan SQL Server 2005, etkisiz sözcük dosyaları kullanılmıyor. Ancak, eski etkisiz sözcük dosyaları ftdata\ FTNoiseThesaurusBak klasöründe saklanır ve bunları daha sonra güncelleştirme veya ilgili yapı kullanabilirsiniz SQL Server 2012stoplists.

Yükseltme sonra SQL Server 2005:

  • Asla eklediyseniz güncellenmiştir veya içinde yüklemenizi etkisiz sözcük dosyaları silinmiş SQL Server 2005, sistem stoplist gereksinimlerinizi karşılamalı.

  • Etkisiz sözcük dosyaları olarak değiştirilmiş ise SQL Server 2005, bu değişikliklerin yükseltme sırasında kayıp. Güncelleştirmeleri yeniden oluşturmak için el ile ilgili olarak bu değişiklikleri yeniden gerekir SQL Server 2008stoplist. Daha fazla bilgi için, bkz. alter fulltext STOPLIST (Transact-sql).

  • Sizin tam metin dizinlerini herhangi stopwords uygulamak istemiyorsanız (örneğin, silinmiş veya etkisiz sözcük dosyaları silinirse, SQL Server 2005Yükleme), her tam metin dizini yükseltme için stoplist devre dışı bırakmanız gerekir. Aşağıdaki komutu çalıştırın Transact-SQLdeyimi (yerine databaseile Yükseltilen veritabanının adını ve tableadı ile table):

    Use database; 
    ALTER FULLTEXT INDEX ON table
       SET STOPLIST OFF;
    GO
    

    Dur sözcük filtreleme STOPLIST off yan tümcesi kaldırır ve tablo, nüfusu gürültü kabul tüm sözcükleri süzme olmadan tetikler.

Yedekleme ve alınan tam metin kataloglar

Tam metin kataloglar yeniden oluşturulur veya yükseltme sırasında (ve yeni tam metin kataloglar), fulltext sıfırlamak için katalog mantıksal bir kavramdır ve bir filegroup bulunmadığı. Bu nedenle, bir tam metin Kataloğu'nda yedeklemek için SQL Server 2012, kataloğun tam metin dizini içeren her dosya grubu tanımlamak ve her biri, birer birer geri gerekir. Daha fazla bilgi için, bkz. Yedekleme ve geri yükleme tam metin kataloglar ve dizinler.

Dan alınan tam metin kataloglar için SQL Server 2005, kendi filegroup veritabanı dosyası bir tam metin kataloğu haldedir. SQL Server 2005msftesql hizmeti yok dışında bu yedekleme işlemi tam metin kataloglar için hala geçerlidir SQL Server 2012. Hakkında bilgi SQL Server 2005process, see Yedekleme ve geri yükleme tam metin kataloglar SQL Server 2005 Books içinde Online.

Veritabanını yükseltme yaparken geçirme tam metin dizinleriSQL Server 2012

Veritabanı dosyaları ve tam metin kataloglar'ın önceki bir sürümünden SQL ServerVarolan için yükseltilebilir SQL Server 2012kullanarak sunucu örneği iliştirin, geri yükleme veya Kopyala Veritabanı Sihirbazı'nı. SQL Server 2005tam metin dizinlerini, varsa, ithal, sıfırlama, yeniden ya. upgrade_optionHangi tam metin yükseltme seçeneği sunucuyu sunucu özellik denetimleri kullanır bu veritabanı yükseltmeleri sırasında.

Sonra eklemek, geri ya da herhangi bir kopyası SQL Server 2005veritabanı SQL Server 2012, veritabanını hemen kullanılabilir hale gelir ve daha sonra otomatik olarak yükseltilir. Dizinlenen veri miktarına bağlı olarak alma birkaç saat ve yeniden oluşturma bunun on katına kadar süre alabilir. Ayrıca, bir tam metin kataloğu yoksa yükseltme seçeneği almak için ayarlandığında, ilişkili tam metin dizinlerini yeniden unutmayın.

Tam metin yükseltme davranışı sunucu örneği değiştirmek için

Geri yükleme ilgili önemli noktalar bir SQL Server 2005tam metin kataloğu içinSQL Server 2012

Fulltext veri yükseltme bir yöntem bir SQL Server 2005veritabanı SQL Server 2012için tam veritabanı yedeği geri yüklemek için SQL Server 2012.

Alırken bir SQL Server 2005tam metin kataloğu, yedekleme ve veritabanı ve Katalog dosyasını geri. Aynı davranıştır SQL Server 2005:

  • Tam veritabanı yedeklemesi tam metin kataloğu içerir. Tam metin kataloğu için başvurmak için kullanın kendi SQL Server 2005Dosya adı, sysft_ +catalog-name.

  • Tam metin kataloğu çevrimdışıysa, yedekleme başarısız olur.

Yedekleme ve geri yükleme hakkında daha fazla bilgi için SQL Server 2005bkz: tam metin kataloglar, Yedekleme ve geri yükleme tam metin kataloglar ve Dosya yedekleme ve geri yükleme ve tam metin kataloglar de SQL Server 2005Çevrimiçi Kitaplar.

Ne zaman veritabanı üzerinde geri SQL Server 2012, yeni bir veritabanı dosyası için tam metin kataloğu oluşturulacaktır. Bu dosyanın varsayılan adı ftrow_ olancatalog-name. NDF. Örneğin, eğer size catalog-nameolan cat1, varsayılan adı SQL Server 2012veritabanı dosyası-cekti var olmak ftrow_cat1.ndf. Ama hedef dizinde varsayılan adı zaten kullanılıyor, yeni veritabanı dosyasının adı ftrow_catalog-name{GUID}.ndf, burada GUIDYeni dosyanın genel benzersiz kimlik.

Kataloglar alındıktan sonra sys.database_filesve sys.master_files Katalog girdileri kaldırmak için güncelleştirilir ve pathsütununda sys.fulltext_catalogsnull olarak ayarlanır.

Bir veritabanını yedeklemek için

Bir veritabanı yedeklemesini geri yüklemek için

Örnek

Aşağıdaki örnek, move yan tümcesi kullanır geri geri bildirimi, bir SQL Server 2005veritabanı adlı ftdb1. SQL Server 2005Veritabanı, günlük ve Katalog dosyaları geçti yeni yerlere SQL Server 2012sunucu örneği, aşağıdaki gibi:

  • Veritabanı dosyası, ftdb1.mdf, taşınır ve C:\Program Files\Microsoft SQL Server\MSSQL.1MSSQL11.MSSQLSERVER\MSSQL\DATA\ftdb1.mdf.

  • Günlük dosyası ftdb1_log.ldf, günlüğü disk sürücünüzdeki bir günlük dizinine taşınır log_drive:\log_directory\ftdb1_log.ldf.

  • Karşılık gelen katalog dosyalarını sysft_cat90Katalog için taşınır C:\temp. Tam metin dizinlerini alındıktan sonra C:\ftrow_sysft_cat90 bir veritabanı dosyasında otomatik olarak yerleştirilir. NDF ve C:\temp silinecektir.

RESTORE DATABASE [ftdb1] FROM  DISK = N'C:\temp\ftdb1.bak' WITH  FILE = 1,
   MOVE N'ftdb1' TO N'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\ftdb1.mdf',
    MOVE N'ftdb1_log' TO N'log_drive:\log_directory\ftdb1_log.ldf',
    MOVE N'sysft_cat90' TO N'C:\temp';

Bir SQL Server 2005 veritabanına bağlamaSQL Server 2012

De SQL Server 2008ve sonraki sürümleri, bir tam metin kataloğu tam metin dizinleri grubuna başvuran mantıksal bir kavram. Tam metin kataloğu herhangi filegroup ait olmayan sanal bir nesnedir. Ancak, ne zaman sen eklemek a SQL Server 2005tam metin kataloğu dosyaları içeren veritabanı bir SQL Server 2012sunucu örneği, diğer veritabanı ile birlikte önceki konumlarından ekli dosyaları katalog dosyaları, aynı SQL Server 2005.

Her devlet, üzerinde tam metin kataloğu bağlı SQL Server 2012aynı olduğunda veritabanı gelen müstakil SQL Server 2005. Herhangi bir tam metin dizini popülasyon ayırma işlemi askıya alınmıştı, nüfus üzerinde devam SQL Server 2012, ve tam metin dizini tam metin arama için kullanılabilir hale gelir.

Eğer SQL Server 2012tam metin katalog dosyası bulunamıyor veya tam metin dosya ekleme işlemi sırasında yeni bir konuma belirtmeden taşındı, seçili tam metin yükseltme seçeneği davranışı bağlıdır. Tam metin yükseltme seçeneği ise Al veya yeniden, ekli tam metin kataloğu yeniden oluşturulur. Tam metin yükseltme seçeneği ise Reset, ekli tam metin kataloğu sıfırlanır.

Ayırma ve bir veritabanı iliştirme hakkında daha fazla bilgi için bkz: Veritabanı bağlantısını kesin ve (SQL Server) iliştirme, Veritabanı (Transact-sql) oluştur, sp_attach_db, ve sp_detach_db (Transact-sql).

Ayrıca bkz.

Kavramlar

Tam metin arama ile başlamak

Yapılandırma ve sözcük ayırıcılarını ve sözcük köklerini arama yönetme

Yapılandırmak ve arama filtrelerini yönetme