2014年1月31日金曜日

オブジェクトは 'RedirectToLocalizedBand'プロパティまたはメソッドをサポートしていません。が発生してIEが使えない場合

エラー内容
このページでスクリプトエラーが発生しました。
ライン : 15
文字 : 2
エラー : オブジェクトは 'RedirectToLocalizedBand'プロパティまたはメソッドをサポートしていません。
コード : 0
URL: file:///XXX/Microsoft%/20Office/Office12/INTLBAND.HTM

のエラーの対処方法は、
IEが固まってそれどころじゃないんだろうけど、IEを起動したと同時にアドオン管理を起動してアドオンを全て無効にするとIEが使えるようになります。

VMWare FusionでRetina Displayの対応方法について

仮想マシン⇒設定⇒ディスプレイ

「Retinaディスプレイのフル解像度を使用します。」
にチェックをつけるだけ
 
これで、Linux系もWindows系もRetinaディスプレイで表示が出来ました。
 
ただし、Windowsはフォントサイズが勝手に大になるようです。。。。
 

2014年1月30日木曜日

有効な認証スキームは、ダイジェスト、ネゴシエート、NTLM、基本、または匿名です。単一の認証スキームのみが使用されるように IIS の設定を変更してください。の対処方法

OSのイベントのエラー内容:
WebHost で要求の処理に失敗しました。
 送信者の情報: System.ServiceModel.ServiceHostingEnvironment+HostingManager/63835064
 例外: System.ServiceModel.ServiceActivationException: コンパイル中に例外が発生したためサービス '/HOGEHOGE/HogeService' をアクティブにできません。例外メッセージ: IIS によって認証スキーム 'IntegratedWindowsAuthentication, Anonymous' が指定されましたが、バインドで指定できる認証スキームは 1 つだけです。有効な認証スキームは、ダイジェスト、ネゴシエート、NTLM、基本、または匿名です。単一の認証スキームのみが使用されるように IIS の設定を変更してください。。 ---> System.InvalidOperationException: IIS によって認証スキーム 'IntegratedWindowsAuthentication, Anonymous' が指定されましたが、バインドで指定できる認証スキームは 1 つだけです。有効な認証スキームは、ダイジェスト、ネゴシエート、NTLM、基本、または匿名です。単一の認証スキームのみが使用されるように IIS の設定を変更してください。
   場所 System.ServiceModel.Web.WebServiceHost.SetBindingCredentialBasedOnHostedEnvironment(ServiceEndpoint serviceEndpoint, AuthenticationSchemes supportedSchemes)
   場所 System.ServiceModel.Web.WebServiceHost.AddAutomaticWebHttpBindingEndpoints(ServiceHost host, IDictionary`2 implementedContracts, String multipleContractsErrorMessage, String standardEndpointKind)
   場所 System.ServiceModel.Web.WebServiceHost.OnOpening()
   場所 System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   場所 System.ServiceModel.ServiceHostingEnvironment.HostingManager.ActivateService(String normalizedVirtualPath)
   場所 System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
   --- 内部例外スタック トレースの終わり ---
   場所 System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
   場所 System.ServiceModel.ServiceHostingEnvironment.EnsureServiceAvailableFast(String relativeVirtualPath)
 プロセス名: w3wp
 プロセス ID: 3716

Webサーバー
 >セキュリティ
  >基本認証
  >Windows認証
を有効にして、仮想サイドのセキュリティから、これらを無効にする必要がある。

2014年1月28日火曜日

物理サーバをAzureへアップしたら、パイプラインは既に実行中のため、パイプラインは実行されませんでした。複数のパイプラインは同時に実行できません。のエラーが発生

PS C:\> Add-AzureVhd -Destination "http://hogehogedata.blob.core.windows.net/vhds/hogehogedata.vhd" -LocalFilePath E:\Server\Azurehogehoge\SERVER_C.vhd
MD5 hash is being calculated for the file  E:\Server\Azurehogehoge\SERVER_C.vhd.
MD5 hash calculation is completed.
Elapsed time for the operation: 00:10:01
Creating new page blob of size 53687091712...
Add-AzureVhd : パイプラインは既に実行中のため、パイプラインは実行されませんでした。複数のパイプラインは同時に実行できません。
発生場所 行:1 文字:1
+ Add-AzureVhd -Destination "http://hogehogedata.blob.core.windows.net/vhds/hogehogedata.v ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Add-AzureVhd]、PSInvalidOperationException
    + FullyQualifiedErrorId : InvalidOperation,Microsoft.WindowsAzure.Commands.ServiceManagement.StorageServices.AddAz
   ureVhdCommand


どうやら他のVHDをAzureへアップしている作業とぶつかったようだ。
処理をシリアライズしてアップロードする必要がある。

2014年1月25日土曜日

VMWare workstation 8.0.6にMac OS X Mavericksをインストールする方法(5)

106日本語キーボードへの変更

https://pqrs.org/index.html.ja

このツールを使う

設定は、「Use US Keyboard as Japanese Keyboard」をONにする。

あと、あたしは、MACの日本語キーボードに合わせてprivate.xmlを用意して、キーを修正した。

<?xml version="1.0"?>
<root>
  <item>
    <name>Windows VMWareで使うための設定(CommandとOptionの入れ替え)</name>
    <identifier>private.swap_command_l_and_option_l</identifier>
    <autogen>__KeyToKey__ KeyCode::COMMAND_L, KeyCode::OPTION_L</autogen>
    <autogen>__KeyToKey__ KeyCode::OPTION_L, KeyCode::COMMAND_L</autogen>
  </item>
  <item>
    <name>Windows VMWareで使うための設定(CntrolとCapsLockの入れ替え)</name>
    <identifier>private.swap_control_l_and_capslock</identifier>
    <autogen>__KeyToKey__ KeyCode::CONTROL_L, KeyCode::CAPSLOCK</autogen>
    <autogen>__KeyToKey__ KeyCode::CAPSLOCK, KeyCode::CONTROL_L</autogen>
  </item>
</root>

あとは、チャタリングが遅かったので、83mmを15mmへ修正しました。

2014年1月24日金曜日

MAC OS X 1.0.9上のVMWare Fusion 6.0.2で、「vmxファイルが壊れています」が発生した。

MACでVMware Server 1.0.10のWindows XPを持ってこようとしたら、このエラーが出てハマりました。


調べてみたら、仮想イメージは互換性があるということで、仮想イメージをファイルコピーすることで、MAC上のVMWare Fusionで起動出来ました。

私は、物理マシンをMAC OSへ持ってきた経験を活かして、物理マシンと同じようにVMWareから提供されているMigrationツールを使って作業していたのがいけなかったようです。

sql server viewのアクセス権限付与 メッセージ 916、レベル 14、状態 1、サーバー hogehoge、行 1

SQL Server 2012/2008R2
2> select top 10 hoge from viewdept;
3> go
メッセージ 916、レベル 14、状態 1、サーバー hogehoge、行 1
現在のセキュリティ コンテキストでは、サーバー プリンシパル "testuser" はデータベース "MST" にアクセスできません。

とのエラーが発生した。
viewはその先の参照テーブルのテーブルにも権限が必要。

1)ロールを使った場合のやり方


create database viewdb;
go
create login viewlogin with password = 'test',check_expiration=off,check_policy=on,default_database=viewdb;
go
use viewdb;
go
create user viewuser for login viewlogin;
go
use mst
create user viewuser for login viewlogin;
--create schema viewSchema authorization viewuser;
--create view viewSchema.viewDept as (select *, 1 hoge, 2 hogehoge from mst.dbo.department);
use viewdb;
go
--drop view viewLine;
create view viewLine as (select l.lineCd, l.deptCD, l.name, 1 hoge, 2 hogehoge from mst.dbo.Line l);
go

use viewdb;
--alter role viewRole drop member viewuser;
--drop role viewRole;
create role viewRole authorization dbo;
alter role viewRole add member viewuser;
grant select on object::viewLine to viewRole;
use mst;
--alter role viewRole drop member viewuser;
--drop role viewRole ;
create role viewRole authorization dbo;
alter role viewRole add member viewuser;
--revoke select on object::Line to viewRole;
grant select on object::Line(lineCd, deptCD, name) to viewRole;



2)ロールをつかわない場合のやり方


create database viewdb;
go
create login viewlogin with password = 'test',check_expiration=off,check_policy=on,default_database=viewdb;
go
use viewdb;
go
create user viewuser for login viewlogin;
go
use mst
create user viewuser for login viewlogin;
--create schema viewSchema authorization viewuser;
--create view viewSchema.viewDept as (select *, 1 hoge, 2 hogehoge from mst.dbo.department);
use viewdb;
go
--drop view viewLine;
create view viewLine as (select l.lineCd, l.eeptCd, l.name, 1 hoge, 2 hogehoge from mst.dbo.Line l);
go
use viewdb;
--ユーザ付与でもいい
grant select on object::viewLine to viewuser;
use mst;
--ユーザ付与でもいい
grant select on object::Line(lineCd, deptCd, name) to viewuser;


ログインとユーザが分かれている部分などは、OracleやMySQLとは違うので留意しておく必要がある。
また、ログインは、Windows認証とSQL Server認証があるので、こちらも抑えておく必要がある。

2014年1月22日水曜日

久しぶりにインターネットに繋いだWindows7の更新の件数が143個だった。

2011/5/24から約3年ぶりのインターネット接続...
100件を超えるなんてちょっと更新数が多すぎる


2014年1月16日木曜日

VMWare workstation 8.0.6にMac OS X Mavericksをインストールする方法(4)


画面サイズが大きくならないので、最後にVMWare toolsを入れて完了となる
iosイメージをマウントしてインストールを行う
詳細
 http://www.sysprobs.com/guide-install-os-x-10-9-mavericks-on-vmware-workstation-with-windows-7-or-windows-8
VMWare tools
 https://drive.google.com/file/d/0B3pJKnB48Oqici1zRk9SejNWWEk/edit?usp=sharing

VMWare workstation 8.0.6にMac OS X Mavericksをインストールする方法(3)



注意点は2点
 CPUを認識さえる。
 Mac OS Extフォーマット DISK イメージを用意する
  DISKは取り込み時にフォーマットを「既存の形式を保持」を選択する
ではやってみよう
 新規でVMを作る。選択OSは、「Apple Mac OS X」の「10.8」にする

 
イメージができたら、「Mac OS Extフォーマット」のDISKを追加する。
追加時に↓の選択肢が出るので、「既存の形式を保持」を選択する。
 

あと、vmxファイルを開いてCPUの対応をさせる。

追加行
cpuid.1.eax = "0000:0000:0000:0001:0000:0110:1010:0101"

あとは、インストールCDまたは、USBメモリを接続して電源を入れるとセットアップが始まります。

Mac OS Extフォーマット DISK イメージ

↓Mac OS ExtフォーマットのDISKイメージがない方へプレゼント100GBです。
MacOSX10.9.vmdk.zip
https://drive.google.com/file/d/0B3pJKnB48OqiVTFSV0laY0h2cUU/edit?usp=sharing

↓私が実際に使っているもの
MacOSX10.9_full_sample.zip
https://drive.google.com/file/d/0B3pJKnB48OqiejZwWVdYNmJXQUU/edit?usp=sharing





VMWare workstation 8.0.6にMac OS X Mavericksをインストールする方法(2)

VMWare workstation 8.0.6にMac OS X Mavericksをインストールする方法(2)
VMWare workstationのロックを外す
VMWareではMACは使用できないようになっているので、解除する必要があります。
手順
 Unlocker1.2.0をインストールする

 1.install.cmd
  を管理者権限で実行する

 詳細
  http://www.insanelymac.com/forum/files/file/20-vmware-unlocker-for-os-x/

 Unlockerの入手先
  https://drive.google.com/file/d/0B3pJKnB48OqiSHJLWXlrenE2dWs/edit?usp=sharing

VMWare workstation 8.0.6にMac OS X Mavericksをインストールする方法(1)

VMWare workstation 8.0.6にMac OS X Mavericksをインストールする方法(1)
苦労したのでメモを残す
1)インストールイメージの作成
 手順は2つあり、私は、コマンドで作成した。
 手順1 DiskMaker Xを使う
  MAC(Mavericks)でDiskMaker Xを入れてUSBメモリに起動DISKとセットアップを入れる。
  USBメモリは8GBは必要
  1.MarverickでApp StoreでOS X Marvericksをインストール開始する
  2.途中でダウンロードしたらセットアップを途中で止める
  3.DiskMaker Xを使用してUSBメモリを起動ディスクにする。
  詳細
   http://c-through.blogto.jp/archives/34782560.html

 手順2 コマンドで起動ディスク兼セットアップディスクを作成する
 
  流したコマンド
 
   # インストールイメージをマウントします
   hdiutil attach /Applications/Install\ OS\ X\ Mavericks.app/Contents/SharedSupport/InstallESD.dmg -noverify -nobrowse -mountpoint /Volumes/install_app
   # ディスクにブートイメージを変換する
   hdiutil convert /Volumes/install_app/BaseSystem.dmg -format UDSP -o /tmp/Mavericks
   # インストーラに対応するためにディスク容量を増やす
   hdiutil resize -size 8g /tmp/Mavericks.sparseimage
   # インストーラを追加するためにディスクにもマウントする
   hdiutil attach /tmp/Mavericks.sparseimage -noverify -nobrowse -mountpoint /Volumes/install_build
   # リンクを削除し、実際のファイルと交換する
   rm /Volumes/install_build/System/Installation/Packages
   cp -rp /Volumes/install_app/Packages /Volumes/install_build/System/Installation/
   # インストーラをアンマウント
   hdiutil detach /Volumes/install_app
   # ディスクをアンマウント
   hdiutil detach /Volumes/install_build
   # ディスクの空き容量を空ける
   hdiutil resize -size `hdiutil resize -limits /tmp/Mavericks.sparseimage | tail -n 1 | awk '{ print $1 }'`b /tmp/Mavericks.sparseimage
   # CDイメージに変換する
   hdiutil convert /tmp/Mavericks.sparseimage -format UDTO -o /tmp/Mavericks
   # ディスクを削除
   rm /tmp/Mavericks.sparseimage
   # 完成品をデスクトップへ移動
   mv /tmp/Mavericks.cdr ~/Desktop/Mavericks.iso
  詳細
   http://bjornhouben.wordpress.com/2013/10/25/apple-create-an-os-x-10-9-mavericks-bootable-usb-flash-drive-or-iso/






2014年1月14日火曜日

ubuntu13.10で発生する日本語表示のエラーについて

 下記のエラーが発生する
 Mozc setup helper
 This program intends to run on Japanese environment. Sorry for inconvenience.
 スパーユーザで設定を変更し、再起動を行う
 sudo su -
 cat /etc/default/locale
 update-locale LANG=ja_JP.UTF-8
 cat /etc/default/locale
 echo "LC_ALL=ja_JP.UTF-8" >> /etc/default/locale
 cat /etc/default/locale
 shutdown -r now
 詳細
  http://blog.designrecipe.jp/2011/06/04/ubuntu-initial-setup-locale-timezone/
参考
  http://kledgeb.blogspot.jp/2014/01/mozc-6-mozc.html


この対応に少し時間がかかった。

2014年1月10日金曜日

エラー:Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo.

cross compilerを使用してlinuxのコードをビルドしたら、
Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo.
のエラーが発生した。

sudoが必要かと思ったが、なんてこと無い、xcodeを起動してlicenseをagreeするだけだった。

2014年1月7日火曜日

gitの操作を間違ったのでリカバリした。その時のメモ


1)ブランチを削除する。リモートブランチを削除する。
http://qiita.com/iori-o@github/items/c7e0aca399371068a9b8
16:59:19.50>git branch --all
* master
  master3
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
  remotes/origin/master3
17:26:16.42>git branch --delete master3
warning: deleting branch 'master3' that has been merged to
         'refs/remotes/origin/master3', but not yet merged to HEAD.
Deleted branch master3 (was 9683d40).
17:27:33.27>git branch --remote
  origin/HEAD -> origin/master
  origin/master
  origin/master3
17:27:36.31>git push --delete origin master3
To //Server/gitdatabase
 - [deleted]         master3

⇒うまくいった。

2)チェックインを指定してブランチを移動する。
http://hylom.net/2011/03/01/how-to-reset-remote-git-branch/
17:37:49.41>git reset dc23eaa0aa4953472bc45e278578c37550c432f7
Unstaged changes after reset:
M       hogehoge.js
M       hogehoge_view.js
M       hogehoge_view.js
M       d_hogehoge.js
M       d_menu.html
M       d_hogehoge.js

3)チェックインしたリモートブランチを削除する。
http://blog.livedoor.jp/enjoy_baseball-advanced/archives/51544249.html
17:41:43.64>
17:58:52.20>git rebase -i HEAD~1
/usr/lib/git-core/git-rebase--interactive: line 189: vi: command not found
Could not execute editor
17:58:58.51>git push origin +master
Total 0 (delta 0), reused 0 (delta 0)
To //Server/gitdatabase
 + 0d40473...dc23eaa master -> master (forced update)
⇒成功した。

.NETでJSONサービスを作って見た。インタフェースを間違えると↓のエラーが発生する。

.NETでJSONサービスを作って見た。インタフェースを間違えると↓のエラーが発生する。

コード
[OperationContract]
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, UriTemplate = "getBeforeHandlingAll/{trainingType}")]
BeforeHandlingListResponse GetBeforeHandlingAll(string traningType);
⇒文字列が異なるとエラーになるようです。
エラーメッセージ
WebHost で要求の処理に失敗しました。
 送信者の情報: System.ServiceModel.ServiceHostingEnvironment+HostingManager/7185836
 例外: System.ServiceModel.ServiceActivationException: The service '/HOGE/HogehogeService' cannot be activated due to an exception during compilation.  The exception message is: Operation 'GetBeforeHandlingAll' in contract 'IHogeService' has a UriTemplate that expects a parameter named 'TRAININGTYPE', but there is no input parameter with that name on the operation.. ---> System.InvalidOperationException: Operation 'GetBeforeHandlingAll' in contract 'IHogeService' has a UriTemplate that expects a parameter named 'TRAININGTYPE', but there is no input parameter with that name on the operation.
   場所 System.ServiceModel.Dispatcher.UriTemplateClientFormatter.Populate(Dictionary`2& pathMapping, Dictionary`2& queryMapping, Int32& totalNumUTVars, UriTemplate& uriTemplate, OperationDescription operationDescription, QueryStringConverter qsc, String contractName)
   場所 System.ServiceModel.Dispatcher.UriTemplateDispatchFormatter..ctor(OperationDescription operationDescription, IDispatchMessageFormatter inner, QueryStringConverter qsc, String contractName, Uri baseAddress)
   場所 System.ServiceModel.Description.WebHttpBehavior.GetRequestDispatchFormatter(OperationDescription operationDescription, ServiceEndpoint endpoint)
   場所 System.ServiceModel.Description.WebHttpBehavior.ApplyDispatchBehavior(ServiceEndpoint endpoint, EndpointDispatcher endpointDispatcher)
   場所 System.ServiceModel.Description.DispatcherBuilder.InitializeServiceHost(ServiceDescription description, ServiceHostBase serviceHost)
   場所 System.ServiceModel.ServiceHostBase.InitializeRuntime()
   場所 System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout)
   場所 System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   場所 System.ServiceModel.ServiceHostingEnvironment.HostingManager.ActivateService(String normalizedVirtualPath)
   場所 System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
   --- 内部例外スタック トレースの終わり ---
   場所 System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
   場所 System.ServiceModel.ServiceHostingEnvironment.EnsureServiceAvailableFast(String relativeVirtualPath)
 プロセス名: w3wp
 プロセス ID: 19252


コード
[OperationContract]
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, UriTemplate = "getBeforeHandlingAll/{trainingType}")]
BeforeHandlingListResponse GetBeforeHandlingAll(int trainingType);
⇒受け取った文字をint型には出来ないようです。
エラーメッセージ
 WebHost で要求の処理に失敗しました。
 送信者の情報: System.ServiceModel.ServiceHostingEnvironment+HostingManager/40607348
 例外: System.ServiceModel.ServiceActivationException: The service '/HOGE/HogeService' cannot be activated due to an exception during compilation.  The exception message is: Operation 'GetBeforeHandlingAll' in contract 'IHogeService' has a path variable named 'trainingType' which does not have type 'string'.  Variables for UriTemplate path segments must have type 'string'.. ---> System.InvalidOperationException: Operation 'GetBeforeHandlingAll' in contract 'IHogeService' has a path variable named 'trainingType' which does not have type 'string'.  Variables for UriTemplate path segments must have type 'string'.
   場所 System.ServiceModel.Dispatcher.UriTemplateClientFormatter.Populate(Dictionary`2& pathMapping, Dictionary`2& queryMapping, Int32& totalNumUTVars, UriTemplate& uriTemplate, OperationDescription operationDescription, QueryStringConverter qsc, String contractName)
   場所 System.ServiceModel.Dispatcher.UriTemplateDispatchFormatter..ctor(OperationDescription operationDescription, IDispatchMessageFormatter inner, QueryStringConverter qsc, String contractName, Uri baseAddress)
   場所 System.ServiceModel.Description.WebHttpBehavior.GetRequestDispatchFormatter(OperationDescription operationDescription, ServiceEndpoint endpoint)
   場所 System.ServiceModel.Description.WebHttpBehavior.ApplyDispatchBehavior(ServiceEndpoint endpoint, EndpointDispatcher endpointDispatcher)
   場所 System.ServiceModel.Description.DispatcherBuilder.InitializeServiceHost(ServiceDescription description, ServiceHostBase serviceHost)
   場所 System.ServiceModel.ServiceHostBase.InitializeRuntime()
   場所 System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout)
   場所 System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   場所 System.ServiceModel.ServiceHostingEnvironment.HostingManager.ActivateService(String normalizedVirtualPath)
   場所 System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
   --- 内部例外スタック トレースの終わり ---
   場所 System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
   場所 System.ServiceModel.ServiceHostingEnvironment.EnsureServiceAvailableFast(String relativeVirtualPath)
 プロセス名: w3wp
 プロセス ID: 19252

互換性のない構造でメディアがフォーマットされた後に 'COMPRESSION' が要求されたため、バックアップを実行できません。このメディア セットに追加するには、'COMPRESSION' を削除するか、'NO_COMPRESSION' を指定します。また、BACKUP ステートメントで WITH FORMAT を使用して、新しいメディア セットを作成することもできます。既存のメディア セットに対して WITH FORMAT を使用すると、そのバックアップ セットはすべて上書きされます。

メッセージ 3098、レベル 16、状態 2、行 1
互換性のない構造でメディアがフォーマットされた後に 'COMPRESSION' が要求されたため、バックアップを実行できません。このメディア セットに追加するには、'COMPRESSION' を削除するか、'NO_COMPRESSION' を指定します。また、BACKUP ステートメントで WITH FORMAT を使用して、新しいメディア セットを作成することもできます。既存のメディア セットに対して WITH FORMAT を使用すると、そのバックアップ セットはすべて上書きされます。
メッセージ 3013、レベル 16、状態 1、行 1
BACKUP DATABASE が異常終了しています。


メッセージ 3098、レベル 16、状態 2、行 8
互換性のない構造でメディアがフォーマットされた後に 'COMPRESSION' が要求されたため、バックアップを実行できません。このメディア セットに追加するには、'COMPRESSION' を削除するか、'NO_COMPRESSION' を指定します。また、BACKUP ステートメントで WITH FORMAT を使用して、新しいメディア セットを作成することもできます。既存のメディア セットに対して WITH FORMAT を使用すると、そのバックアップ セットはすべて上書きされます。
メッセージ 3013、レベル 16、状態 1、行 8
BACKUP LOG が異常終了しています。
が発生する理由
バックアップメディアを非圧縮で作成して、そこに圧縮を入れるとこのエラーが発生します。
エラーの発生するパターン
ex1
BACKUP DATABASE HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT

BACKUP DATABASE HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT, COMPRESSION

ex2
BACKUP LOG HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT

BACKUP LOG HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT, COMPRESSION

注意事項は、
BACKUP DATABASE HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT, COMPRESSION

BACKUP DATABASE HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT

BACKUP LOG HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT, COMPRESSION

BACKUP LOG HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT
ってやるとエラーが出ない上に、初回で作成されたメディアセットが圧縮のために二回目も圧縮でファイルが作成されます。

また、強制的にメディアセットを新しいフォーマットで上書きしたい場合は、
BACKUP DATABASE HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT

BACKUP DATABASE HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT, COMPRESSION, FORMAT

BACKUP LOG HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT

BACKUP LOG HOGEHOGE TO DISK=N'D:\HOGEHOGE.bak'
WITH INIT, COMPRESSION, FORMAT
などとするとえらーになりません。
ただし、メディアセットの初期化はその内容が全て使用できなくなるため、注意が必要です。