Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
SQL Server, kurulum sırasında veya SQL Server 2005 (9.x) ve önceki sürümlerden veritabanı dosyalarını ve tam metin kataloglarını eklediğinizde, geri yüklediğinizde veya kopyaladığınızda tam metin aramalarını yükselter.
Sunucu örneğini yükseltme
Yerinde yükseltme için, SQL Server örneği, SQL Server'ın eski sürümüyle yan yana kurulur ve veriler taşınır. SQL Server'ın eski sürümünde tam metin araması yüklüyse, tam metin aramanın yeni bir sürümü otomatik olarak yüklenir. Yan yana yükleme, aşağıdaki bileşenlerin her birinin SQL Server'ın örnek düzeyinde mevcut olduğu anlamına gelir.
Sözcük ayırıcılar, kök bulucular ve filtreler
Her örnek artık bu bileşenlerin işletim sistemi sürümüne bağlı kalmak yerine kendi kelime ayırıcılarını, kök analizcilerini ve filtrelerini kullanır. Bu bileşenlerin örnek düzeyinde kaydedilmesi ve yapılandırılması da daha kolaydır. Daha fazla bilgi için, kelime ayırıcılarını ve kökleyicileri yapılandırma ve yönetme ve filtreleri yapılandırma ve yönetme konularına bakın.
Filtre servis sunucusu
Tam metin filtresi daemon konakları, Full-Text Altyapısının bütünlüğünden ödün vermeden, dizin ve sorgu için kullanılan sözcük ayırıcılar, kök ayırıcılar ve filtreler gibi genişletilebilir dış bileşenleri güvenli bir şekilde yükleyen ve yönlendiren işlemlerdir. Sunucu örneği, tüm çok iş parçacıklı filtreler için çok iş parçacıklı bir işlem ve tüm tek iş parçacıklı filtreler için tek iş parçacıklı bir süreç kullanır.
FDHOST Launcher servisi (MSSQLFDLauncher), hizmet hesabı bilgilerini belirli bir Database Engine örneğinin filtre daemon ana süreçlerine yayar. Hizmet hesabını ayarlama hakkında bilgi için, tam metin Filter Daemon Launcher için hizmet hesabını ayarla'na bakınız.
SQL Server 2005 yükseltme uyumluluğu
Tam metin kataloğu, bir grup tam metin dizini içeren mantıksal veya sanal bir nesnedir. Bu nedenle, yeni bir tam metin kataloğu fiziksel yolu olan bir veritabanı dosyası olarak değerlendirilmez. Ancak, SQL Server 2005 (9.x)'den yükseltme yaparsanız, veri dosyaları içeren herhangi bir tam metin katalog için aynı diskte yeni bir dosya grubu oluşturulur.
Bu yordam, yükseltmeden sonra eski disk G/Ç davranışını korur. Bu katalogdaki tüm tam metin dizinleri, kök yol varsa yeni dosya grubuna yerleştirilir. Eski tam metin kataloğu yolu geçersizse yükseltme, tam metin dizinini temel tabloyla aynı dosya grubunda veya bölümlenmiş bir tablo için birincil dosya grubunda tutar.
Tam metin yükseltme seçenekleri
Bir SQL Server örneğini yükselttiğinizde, kullanıcı arayüzü aşağıdaki tam metin yükseltme seçeneklerinden birini seçmenize olanak tanır. Bu seçenekler yalnızca SQL Server 2005 (9.x) veritabanları için mevcuttur.
İthalat
Tam metin katalogları içeri aktarılır. Genellikle içeri aktarma işlemi yeniden oluşturma işleminden önemli ölçüde daha hızlıdır. Örneğin, sadece bir CPU çekirdeği ile import yeniden yapılandırmadan yaklaşık 10 kat daha hızlı çalışıyor. Ancak, içeri aktarılan bir tam metin kataloğu, SQL Server'ın en son sürümüyle yüklenen yeni sözcük ayırıcılarını kullanmaz. Sorgu sonuçlarında tutarlılık sağlamak için tam metin kataloglarının yeniden oluşturulması gerekir.
Not
Yeniden yapılandırma çok iş parçacıklı modda çalışabilir ve eğer 10'dan fazla CPU çekirdeği varsa, yeniden yapılandırma tüm çekirdekleri kullanmasına izin verirseniz ithalattan daha hızlı çalışabilir.
Tam metin kataloğu kullanılamıyorsa, ilişkili tam metin dizinleri yeniden oluşturulur.
Tam metin bir indeks içe aktarmanın etkisi hakkında bilgi için, bu makalenin ilerleyen bölümlerinde tam metin yükseltme seçeneği seçme konusunda Dikkate Alınanlar bölümüne bakınız.
Rebuild
Tam metin kataloglar, mevcut sürümün kelime kırıcıları kullanılarak yeniden oluşturulur. Dizinlerin yeniden oluşturulması biraz zaman alabilir ve yükseltmeden sonra önemli miktarda CPU ve bellek gerekebilir.
Ayarla
Tam metin katalogları sıfırlanır. SQL Server 2005 (9.x)'den yükseltme yaptığınızda, tam metin katalog dosyaları kaldırılır, ancak tam metin kataloglar ve tam metin indeksler için meta veriler korunur. Yükseltildikten sonra, değişiklik izleme için tüm tam metin dizinleri devre dışı bırakılır ve gezinmeler otomatik olarak başlatılmaz. Yükseltme tamamlandıktan sonra el ile tam popülasyon verene kadar katalog boş kalır.
Tam metin yükseltme seçeneği belirleme konusunda dikkat edilmesi gerekenler
Yükseltme seçeneğini seçtiğinizde aşağıdakileri göz önünde bulundurun:
Sorgu sonuçlarında tutarlılık gerekiyor mu?
Database Engine, Full-Text ve Anlamsal Arama’da kullanılmak üzere yeni kelime kırıcıları yükler. Sözcük ayırıcıları hem dizin oluşturma zamanında hem de sorgu zamanında kullanılır. Tam metin kataloglarını yeniden oluşturmazsanız, arama sonuçlarınız tutarsız olabilir. Eğer Database Engine'in önceki bir sürümünde ve mevcut kelime kırıcısında kelime kırıcı tarafından farklı şekilde bölünmüş bir ifadeyi arayan tam metin sorgusu gönderirseniz, bu ifadeyi içeren bir belge veya satır alınmayabilir. Bunun nedeni, dizine alınan tümceciklerin sorgunun kullandığından farklı mantık kullanılarak bozulmasıdır. Çözüm, dizin zamanı ve sorgu zamanı davranışının aynı olması için tam metin kataloglarını yeni sözcük ayırıcılarıyla yeniden doldurmayı (yeniden derlemeyi) sağlar. Bunu yapmak için Yeniden İnşa seçeneğini seçebilir veya İtçe Etme seçeneğini seçtikten sonra manuel olarak yeniden inşa edebilirsiniz.
Tamsayı tam metin anahtar sütunları üzerinde oluşturulmuş tam metin dizinleri var mıydı?
Yeniden derleme, bazı durumlarda güncellenmiş tam metin dizininin sorgu performansını artıran sistem içi iyileştirmeler yapar. Özellikle, temel tablonun tam metin anahtar sütununun bir tamsayı veri türü olduğu tam metin dizinleri içeren tam metin kataloglarınız varsa, yeniden derleme, yükseltmeden sonra tam metin sorgularının ideal performansını elde eder. Bu durumda, Yeniden Yapı seçeneğini kullanmalısınız.
Not
Tam metin indeksler için, tam metin anahtarı olarak hizmet veren sütun tam sayı veri tipi olmalıdır. Daha fazla bilgi için, Tam metin indekslerin performansını iyileştirin bkz.
Sunucu örneğinizi çevrimiçi hale almanın önceliği nedir?
Yükseltme sırasında içeri aktarma veya yeniden oluşturma işlemi çok fazla CPU kaynağı gerektirir ve bu durum sunucu örneğinin geri kalanının yükseltilip çevrimiçi hale gelmesini geciktirir. Sunucu örneğini mümkün olan en kısa sürede çevrimiçi hale getirmek önemliyse ve yükseltmeden sonra el ile bir popülasyon çalıştırmak istiyorsanız Sıfırlama uygundur.
Tam metin dizinini içeri aktardıktan sonra tutarlı sorgu sonuçları elde edin
SQL Server 2005 (9.x) veritabanını yükselttiğinizde tam metin katalog içe aktarılırsa, eski ve yeni kelime kırıcılarının davranışlarındaki farklılıklar nedeniyle sorgu ile tam metin indeks içeriği arasında uyumsuzluklar oluşabilir. Bu durumda, sorgularla tam metin dizini içeriği arasında toplam eşleşmeyi garanti etmek için aşağıdaki seçeneklerden birini belirleyin:
ile ALTER FULLTEXT CATALOGtam metin dizinini içeren tam metin kataloğunu yeniden oluşturun:
ALTER FULLTEXT CATALOG <catalog_name> REBUILD;ALTER FULLTEXT INDEX ile tam metin dizininde bir
FULL POPULATIONgerçekleştirin:ALTER FULLTEXT INDEX ON <table_name> START FULL POPULATION;
Kelime ayırıcılar hakkında daha fazla bilgi için Kelime ayırıcıları ve kök bulucuları yapılandırma ve yönetme bölümüne bakın.
Gürültü sözcüğü dosyalarını durdurma listelerine yükseltme
Veritabanı SQL Server 2005'ten (9.x) yükseltildiğinde, kirli sözcük dosyaları artık kullanılmaz. Ancak, eski kirli sözcük dosyaları FTDATA\FTNoiseThesaurusBak klasöründe depolanır ve bunları daha sonra ilgili SQL Server durdurma listelerini güncelleştirirken veya oluştururken kullanabilirsiniz.
SQL Server 2005'ten (9.x) yükselttikten sonra:
SQL Server 2005 (9.x) yüklemenize hiç kirli sözcük dosyası eklemediyseniz, değiştirmediyseniz veya silmediyseniz sistem durdurma listesi gereksinimlerinizi karşılamalıdır.
Kirli sözcük dosyalarınız SQL Server 2005'te (9.x) değiştirildiyse, yükseltme sırasında bu değişiklikler kaybolur. Bu güncelleştirmeleri yeniden oluşturmak için bu değişiklikleri ilgili durdurma listesinde el ile yeniden oluşturmanız gerekir. Daha fazla bilgi için bkz. ALTER FULLTEXT STOPLIST.
Tam metin dizinlerinize herhangi bir stopword uygulamak istemiyorsanız (örneğin, SQL Server 2005 (9.x) yüklemenizde gürültü kelime dosyalarınızı silmiş veya kaldırmışsanız), yükseltilen her tam metin dizini için durdurma listesini iptal etmeniz gerekir. Aşağıdaki Transact-SQL deyimini çalıştırın (veritabanı yükseltilen veritabanının adıyla ve tablotabloadıyla değiştirerek):
USE [database]; GO ALTER FULLTEXT INDEX ON [table] SET STOPLIST OFF; GOBu madde,
STOPLIST OFFkesinti kelimesi filtrelemesini kaldırır ve gürültü olarak kabul edilen kelimeleri filtrelemeden tablonun bir popülasyonunu tetikler.
Yedeklenen ve içe aktarılan tam metin katalogları
Yükseltme sırasında yeniden oluşturulan veya sıfırlanan tam metin kataloglar (ve yeni tam metin kataloglar için) tam metin katalog mantıklı bir kavramdır ve dosya grubunda yer almaz. Bu nedenle, bir tam metin kataloğunu yedeklemek için, kataloğun tam metin dizinini içeren her dosya grubunu tanımlamanız ve her birini birer birer yedeklemeniz gerekir. Daha fazla bilgi için bkz . Tam metin kataloglarını ve dizinlerini yedekleme ve geri yükleme.
SQL Server 2005'ten (9.x) içeri aktarılan tam metin katalogları için, tam metin kataloğu kendi dosya grubundaki bir veritabanı dosyasıdır. Tam metin katalogları için SQL Server 2005 (9.x) yedekleme işlemi, MSFTESQL hizmetinin SQL Server'da mevcut olmaması dışında da geçerlidir. SQL Server 2005 (9.x) işlemi hakkında bilgi için bkz. SQL Server 2005 Books Online'da Full-Text Kataloglarını Yedekleme ve Geri Yükleme.
Veritabanını yükseltirken tam metin dizinlerini geçirme
SQL Server'ın önceki bir sürümündeki veritabanı dosyaları ve tam metin katalogları ekleme, geri yükleme veya Veritabanı Kopyalama Sihirbazı kullanılarak mevcut bir örneğe yükseltilebilir. SQL Server 2005 (9.x) tam metin dizinleri varsa içe aktarılır, sıfırlanır veya yeniden oluşturulur.
upgrade_option sunucu özelliği, sunucu örneğinin bu veritabanı yükseltmeleri sırasında hangi tam metin yükseltme seçeneğini kullandığını belirtir.
Herhangi bir SQL Server 2005 (9.x) veritabanını yeni bir örneğine eklediğinizde, geri yüklemeniz veya kopyalamanız durumunda, veritabanı hemen kullanılabilir hale gelir ve otomatik olarak güncellenir. Dizine alınan veri miktarına bağlı olarak içeri aktarma işlemi birkaç saat sürebilir ve yeniden oluşturma işlemi 10 kat daha uzun sürebilir. Yükseltme seçeneği içeri aktaracak şekilde ayarlandığında, tam metin kataloğu kullanılamıyorsa, ilişkili tam metin dizinleri yeniden oluşturulur.
Sunucu örneğinde tam metin yükseltme davranışını değiştirme
SQL Server Management Studio: Sunucu Özellikleri iletişim kutusunun Full-Text Yükseltme Seçeneğini kullanın. Daha fazla bilgi için bkz. Yönet ve İzle Full-Text Sunucu Örneği Arama.
SQL Server 2005 (9.x) tam metin kataloğunu geri yüklemek için dikkat edilmesi gerekenler
SQL Server 2005 (9.x) veritabanından tam metin veriyi yükseltmenin bir yöntemi, tam bir veritabanı yedeklerini daha yeni bir SQL Server örneğine geri yüklemektir.
SQL Server 2005 (9.x) tam metin kataloğunu içeri aktarırken veritabanını ve katalog dosyasını yedekleyebilir ve geri yükleyebilirsiniz. Davranış, SQL Server 2005 (9.x) ile aynıdır:
Tam veritabanı yedeklemesi tam metin kataloğunu içerir. Tam metin kataloğuna başvurmak için SQL Server 2005 (9.x) dosya adını sysft_+katalog-adıkullanın.
Tam metin kataloğu çevrimdışıysa yedekleme başarısız olur.
SQL Server 2005 (9.x) tam metin kataloglarını yedekleme ve geri yükleme hakkında daha fazla bilgi için bkz. Tam metin katalogları ve dizinleri yedekleme ve geri yükleme ve SQL Server 2005 (9.x) Books Online'da Dosya Yedekleme ve Geri Yükleme ve Full-Text Katalogları .
Veritabanı daha yeni bir SQL Server örneğine geri yüklendiğinde, tam metin kataloğu için yeni bir veritabanı dosyası oluşturulur. Bu dosyanın varsayılan adı ftrow_katalog-adı.ndf'dir. Örneğin, katalog adınızcat1ise, SQL Server veritabanı dosyasının ftrow_cat1.ndfvarsayılan adı . Ancak varsayılan ad hedef dizinde zaten kullanılıyorsa, yeni veritabanı dosyası ftrow_katalog adı{GUID}.ndf olarak adlandırılır; burada GUID yeni dosyanın küresel benzersiz tanımlayıcısıdır.
Kataloglar içeri aktarıldıktan sonra, sys.database_files ve sys.master_files katalog girdilerini kaldıracak şekilde güncelleştirilir ve path içindeki sys.fulltext_catalogs sütun olarak NULLayarlanır.
Veritabanını yedekleme
- Tam veritabanı yedeklemeleri
- İşlem günlüğü yedeklemeleri (sadece tam kurtarma modeli)
Veritabanı yedeğini geri yükleme
- Tam Veritabanı Geri Yüklemeleri (Basit Kurtarma Modeli)
- Tam Veritabanı Geri Yüklemeleri (Tam Kurtarma Modeli)
Örnek
Aşağıdaki örnek, ftdb1 adlı SQL Server 2005 (9.x) veritabanını geri yüklemek için RESTORE deyimindeki MOVE yan tümcesini kullanır. SQL Server 2005 (9.x) veritabanı, günlük ve katalog dosyaları SQL Server sunucu örneğindeki yeni konumlara aşağıdaki gibi taşınır:
ftdb1.mdfveritabanı dosyasıC:\Program Files\Microsoft SQL Server\MSSQL.1MSSQL13.MSSQLSERVER\MSSQL\DATA\ftdb1.mdf'e taşındı.ftdb1_log.ldfgünlük dosyası, log_drive:\log_directory\ftdb1_log.ldfkonumundaki günlük disk sürücünüzdeki bir günlük dizinine taşınır.sysft_cat90kataloğa karşılık gelen katalog dosyalarıC:\temptaşınır. Tam metin indeksler içe aktarıldıktan sonra, otomatik olarak bir veritabanı dosyasına yerleştirilir veC:\ftrow_sysft_cat90.ndfC:\tempsilinir.
RESTORE DATABASE [ftdb1] FROM DISK = N'C:\temp\ftdb1.bak'
WITH FILE = 1,
MOVE N'ftdb1' TO N'C:\Program Files\Microsoft SQL Server\MSSQL12.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';
SQL Server 2005 veritabanı ekleme
SQL Server 2008 (10.0.x) ve sonraki sürümlerinde tam metin kataloğu, bir grup tam metin dizinine başvuran mantıksal bir kavramdır. Tam metin kataloğu, hiçbir dosya grubuna ait olmayan bir sanal nesnedir. Ancak, tam metin katalog dosyalarını içeren bir SQL Server 2005 (9.x) veritabanını daha yeni bir SQL Server sunucu örneğine eklediğinizde, katalog dosyaları sql Server 2005 (9.x) ile aynı şekilde önceki konumlarından diğer veritabanı dosyalarıyla birlikte eklenir.
SQL Server'da eklenen her tam metin kataloğunun durumu, veritabanının SQL Server 2005'ten (9.x) ayrılmasıyla aynıdır. Ayırma işlemi tarafından herhangi bir tam metin dizini popülasyonu askıya alınmışsa, popülasyon SQL Server'da sürdürülür ve tam metin dizini tam metin araması için kullanılabilir hale gelir.
SQL Server tam metin katalog dosyasını bulamıyorsa veya ekleme işlemi sırasında yeni bir konum belirtmeden tam metin dosyası taşındıysa, davranış seçilen tam metin yükseltme seçeneğine bağlıdır. Tam metin yükseltme seçeneği "İçeri Aktar" veya "Yeniden Oluştur" olarak belirlendiğinde, mevcut tam metin kataloğu yeniden oluşturulur. Tam metin yükseltme seçeneği sıfırlaise, iliştirilmiş tam metin kataloğu sıfırlanır.
Veritabanını ayırmak ve bağlamak hakkında daha fazla bilgi için Veritabanı ayırma ve ekleme, CREATE DATABASE, sp_attach_db ve sp_detach_db bölümlerine bakınız.