Microsoft SQL Server 総合スレ 12
Microsoft SQL Server (Transact-SQL) の総合スレッドです。
・Microsoft 公式サイト
http://www.microsoft.com/japan/sql/ indexの断片化とか気にしたことなかった
やばいかな? ★★★貧富格差解消の為には、累進税の税率を国民投票で決めるべきである★★★●
http://jbbs.livedoor.jp/stud●y/3729/storage/1069408696.ht●ml#47
この掲示板(万有サロン)に優秀な書き●込みをして、総額148万円の賞金をゲットしよう!(*^^)v
http://jbbs.livedoor.jp/stud●y/3729/ →リンクが不良なら、検索窓に入れる! 断片化もそうだけど統計情報はちゃんとやらんと泣く
インデックスヒント入れてればまあごまかせるけど、フルスキャンしいのNestedLoopしいので時間かかるわCPUぶんまわるわとひどい目に遭う SSL通してインターネット経由で使うのはありですか? VPNではなく、SQL ServerのSSL使ってポート固定でFW に穴開けて、という想定です SQL Slammerなんてのが流行ったことあったらから
FWで接続元絞れるんならまあ セキュリティがSQLServer自身の認証頼りになるからおススメしない
特定IPのみ接続可とかやるくらいなら素直にVPNにしとけ >>41
なぜかあなたのようなことを言ってしまう方が大勢いますが、明確な理由を説明できないでしょう? 明確な理由も何もフロントの認証より危険なのはちょっと考えればわかるだろ
Webアプリの認証突破されてもまだDBまで到達されない方法はあるが
直でログインされたらもう終わりだ >>43
それ単にWebアプリケーションサーバが挟まる構成を取る意味がわかっていないひとの理屈だよ。 >セキュリティがSQLServer自身の認証頼りになるからおススメしない
個人的にはこの意見に同意するんだが
実際それでどれほどの危険があるかだろ
ありなしの基準をはっきりさせんと何とも言えんわな
SQL Azureのセキュリティってこれしかないんじゃね Azureはサブネットで隔離すりゃ行けるんじゃないの知らんけど だいたい管理者ユーザーを使わせるわけでもないのに騒ぎすぎなんだよな。 SQLの認証にセキュリティホールがあるかどうか、って話だよな そういや3回失敗したら垢ロックみたいなのはないのかね
あっても解除どうすんのとは思うが 普通のSQL Serverなら、パスワードポリシーでロックアウト出来んじゃね
Azureはどうだかしらんが 結局のところ守りたいとこまでの壁を1つにしますか2つ以上にしますか、ってとこじゃないの?
詳しくないから見当違いかもだけど AWSだとサブネットで制限できると思った
Azureは知らん サーバー再起動したら、夜に2時間で終わってた処理が4時間ちょいかかるようになった
dm_exec_query_statsみてもこれだというのが特定できなかったんで、とりあえず統計情報更新とインデックス再構築かけたけどかわらん
パフォーマンスカウンタとってたんで比較すると
・CPU使用率は2時間ave80%だったのが4時間ave80%に
・ディスクIOはPhysical diskのキューも読み書きバイト数も1秒あたりの数値が半減、IO Latch waitも1秒あたりの待ち時間が半減
・メモリはmax、minで割り当てを固定(物理RAMの8割)、Buffer Managerのデータキャッシュをグラフでみると、2時間の挙動がまんま4時間に引き延ばしたかたちに変わった
・ロック待ちのカウンタみると1秒あたりの平均待ち時間が倍増←たぶんここの原因が問題
考えられること、他にみるべきところあったら教えてほしい
どう推論するか悩み中です リコンパイル指定掛けないと統計反映されないとかいう話なかったっけ
それでロック街増えるかはわからんが >>60
アドホッククエリが多すぎるのかキャッシュが1日保たないのでそれはないです
と、書いて気付いたけどプランが変わったとかは考えにくいな
ほぼ毎日コンパイルされるのは前と変わらんし・・・まじでハード絡みなのか、異常があったら通知されるはずなんだけどな、、 手動で止めてたサービスが再起動で動いてリソース食ってるとか
WindowsUpdateとかウィルス対策ソフトとかあやしい >>58
OSを再起動したかの、SQL Serverを再起動したのか、どちらなのか? >>62
サービスの確認はしてないですが、日中は全然負荷かかってないのでリソース喰ってるとかはたぶんないです
メモリはSQLServerに固定で80%分与えてるんで空き10数パーしかないですが(とはいえ10GB前後くらいは空きあり)
>>63
OS再起動です。再起動した部隊に聞いたらOSのパッチ当てたとのこと(OSはWin2012)
そっちの確認が先だった、なに当てたか確認します。 年明けののIntelCPU脆弱性のやつだったらめちゃ遅くなるぞ SQL serverのライセンスに関する質問です。
データベースにSQL serverを使用している
業務アプリケーションソフトがあります。
本部のWindows10のパソコンにSQL server を
インストールし、スタンドアロンでアプリを
動かすのですが、このパソコンで作成した
データをエクスポートし、支社のパソコンに
インポートして使用します。
支社のパソコンにもSQL serverがインストール
されており、スタンドアロンでアプリを動かす
ことが出来ます。
この場合、各パソコンにインストールする
SQL serverは全て無償版で問題ないのでしょうか?
それとも、正規版が必要でしょうか?
正規版が必要な場合、CALは必要でしょうか?
各パソコンはネットワーク接続されていますが、
SQL serverの使用形態は各パソコン個別で、
他のパソコンのデータベースを参照するような
ことはありません。
よろしくお願い致します。 >>66
最新版なら無償版で問題ない
ファイルサイズ10Gの制限だけ気をつけろ どうでもいいけど、無償版の対義語が正規版ってお前... 無償版てExpress Editionよね、それなら商用利用可能だしだいじょぶ
他のEditionならライセンス必要(Developerは商用利用不可) sever osじゃないosでの、他ノードからのアクセスもokだっけ? それはダメ
なおMySQLやPostgreSQLでもダメな模様 それはどっちかっていうとOSのライセンスの問題だからな
この質問はスタンドアロンでやってるからセーフだろう >>74
原則ダメじゃなかった?
プリンタとかの接続は許可されてるけど >>75
例外的にOK
IISもそう
データベースサーバーはダメ
IIS経由のデータベースとかは知らん 考えてみたら、mdbファイルとかSQLiteとかをIIS経由で使うのはOKてことになるのかな
なんだかな でも小規模な会社でもなけりゃだいたいのところは買ってるんじゃないの
ファイルサーバにしたってCAL不要のWindowsStorageServerじゃスペックきついし
サーバ毎に必要なわけじゃないしユーザ分なりデバイス分なり買うもんじゃないのかな >>79
すまん
Windows Server CALの話に乗っかったつもりだったがクライアントOSの話だったね 【悔日企業ヘイトバンク】 父は犬、兄は黒人、白戸は白洲、私たちはあのCMを見るたびに侮辱されていた
http://rosie.5ch.net/test/read.cgi/liveplus/1545098183/l50
I T 業 界 の B T S 問 題 浮 上 ! DECLARE @TABLE TABLE = TABLE01;
SELECT * FROM @TABLE;
みたいなことは出来ないです?
同じ構成のテーブルを条件で切り替えて使えないかなと。
sp_executesql を使って SQL を文字列で合成する方法は知っていますが、正直めんどくさい。。 ・SQL Server Express自体の接続数は無制限
・Windows 7、8、10 OSにインスコの場合、接続数は20まで
・Windows Server OSにインスコの場合、接続数はCALに依存
らしいぞ。
sql server express 接続数 windows10 ググれ システムエグゼ
苦情申し立てダイレクト窓口
代表取締役社長 酒井 博文
h-sakai@system-exe.co.jp
専務取締役 大場 康次
yohba@system-exe.co.jp
専務取締役 後藤 清孝
kgotou@system-exe.co.jp
取締役 藤林 隆司
rfujiba@system-exe.co.jp
rfujiba2@system-exe.co.jp
取締役 荻野 弘昭
h-ogino@system-exe.co.jp
取締役 新船 幸広
arafune@system-exe.co.jp
arafune_PJ@system-exe.co.jp
監査役 白銀 亨
sirokane@system-exe.co.jp LDHから新発売の「EXSUPPLI BLOCK」「EXSUPPLI PARTY」ゼビオ・ヴィクトリアの全店舗で11月29日(木)発売開始! select *
from テープ゛ル
where 日時>getdate()
みたいな感じに getdate() を使ったとき、
1行ごとに(その瞬間の)getdate() と日時が評価されるのか
SQLが走り始める瞬間のgetdate()を得て、その単一の値を使って評価されるのか、どっちでしょうか? >>87
後者は保証されてないはずだから前者じゃね >>87
それは動作不明、意図が曖昧だからやらない。あらかじめ日時を取得してから条件値として用いるのが普通。 >>87
同じ結果が返り続ける関数を延々と使うのは開発者としてありえない。時間がすぎて変わることを想定しているのかどうかもSQLから読み取れない。 何万行入ったテーブルに select *,getdate() from table やるとgetdate()の結果は全行同じだから後者と思われ 一応1300万行超のテーブルで確認したけどgetdate()の結果は全行同一でしたw getdateは非決定的関数のはずだが、実行計画次第で1回しか評価されてないのかも ただの読み取り一貫性を保つためだと思うけどな。SELECTをし始めた時点と条件の日時が異なったら、結果のデータをみたら一貫性があるのかどうかわからなくなる。
こんなSQLを書くやつはプログラマではない。 >>95
読み取り一貫性ってどういう意味で使ってるんだ?
その理屈だとたとえばRAND関数で評価してもすべて同じ数値で評価されるのか? >>96
RAND関数そのものが常に同じ値を返す関数だとわかってる? RANDは評価するたびに違う値を返す
select RAND(),RAND() とかやればあきらか
GETDATEも同じ値を返すとは限らない非決定的関数
ただ手元で試した範囲では、>>91のようなSQLだとComputeScalarの実行回数が1回になる
つまり、関数が1回しか評価されていないから、同じ値なのは当然
これは保障された動作じゃないはずだから、それらの関数が同じ値を使う保証はないと思うが
ないとは言えないはずだが、実際に複数回評価される状況があるかどうかわからんな
パーティション分割されたテーブルとかでパラで評価されるような状況だと違う結果にならないか誰か実験してみれくれ >>100
ベテランプログラマのなかにもループの中で今日の年月日を取得し続けるやつがいるからなあ。
しかもそれ日次バッチ処理w そりゃベテランにもアホはいるだろ
たいてい淘汰されるんだけどお前ん所が生き残れる環境だっただけ カラムストアインデックスの検証したけど、単一の表にアクセスするだけのSQLだと劇的な効果出たけど、複数の表を結合した複雑なクエリには無力だった。これって常識? >>103
全部ひとつのテーブルにまとめてしまえばよいw >>105
リレーショナルデータベース完全否定やん 実際縦集計速くするための仕組みだから
そういうテーブル設計が正解でしょ
必要な項目が全て存在する集計用データマート VPSにSQLServerをインストールして、外部接続可能な設定はしました。(パワーシェルでポート指定で疎通確認済み)
また、SQLServer認証も設定済みです。
@@servernameで取得した名前が db1
VPSのアドレスが1.1.1.1
開放したportが1433
だとして、自宅のPCのSSMSからVPS上のdb1に接続するには、サーバー名にはどのような記入をすれば良いのでしょうか? >>110
デフォルトインスタンス(MSSQLSERVER)なら
VPSの外向けグローバルIPだけでOK
VPS側のファイヤーウォールで自宅側ルータのIPに絞っとかないと
アタック受けるから注意しろ >>111
無事、接続出来ました。セキュリティの件もアドバイスありがとうございます。 >>113
ただのインデックス付きビューではたいして変わらないだろう。
SQL Serverはマテリアライズドビューが最新版でもないのかな?
そのときの最新の一貫性のとれたデータが必要でないなら、更新がかからない時間にでもコピーを作っておけばよい。
または目的のSQLを更新がかからない時間に実行して結果を取得しておく。 いったん対象範囲を#テーブルに切り出して、それにインデックス張って・・・ってのは時々やる ツイッターやネットでテクノロジー犯罪と検索して、まじでやばいことを四代目澄田会の幹部がやってる(アメリカではMKウルトラ計画)
被害者に対して暴力団以外にタゲそらしをしてるがやってるのは暴力団で普段外に出ることが少ないため遊びで公共の電波と同じような電波を使って殺人をしてる
統失はほとんどが作られた病気で実際は電波によって音声送信や思考盗聴ができることが最近明らかになりつつある
警察や病院では病気としてマニュアル化されてしまっているのが現状で被害者は泣き寝入りしてる
被害者がリアルタイムで多い現状を知って、被害者間でしか本当の事だと認知できていない
実際にできると思われていない事だから、ただの幻聴ではない実際に頭の中で会話ができる
できないことだと思われているからこそ真面目に被害を訴えてる
海外でも周知されつつあることを知ってほしい。
このままだとどんどん被害が広がる一方
#テクノロジー犯罪
#四代目澄田会
#拡散希望
[参考]
https://black.ap.teacup.com/yamisiougn01/6.html
https://tekunoroji-hanzaihigai.jimdo.com
https://blogs.yahoo.co.jp/patentcom
https://twitter.com/celesty_cs 👀
Rock54: Caution(BBR-MD5:f70dfdc711a7c6ae6accccb939f27fbf)
https://twitter.com/5chan_nel (5ch newer account) not exists句とexcept演算子ってほぼ同じものでしょうか?
どちらかがあればもう片方は無くても特に困らないですかね? >>118
求める結果が同じあればまだいいが、2つはまったくの別物。 「ユーザー定義データ型」ってのがあると思うんですが、
そいつを含んだものを C# 側から ExecuteReader() とかで SELECT 取得したとき
各列のユーザー定義データ型を調べる手段ないでしょうか。
CREATE TYPE [dbo].[JAN13] FROM [char](13) NOT NULL
みたいにして、この列を含んだ行を SELECT したとき
char[13] じゃなくて [dbo].[JAN13] という定義名を得たいのです。 同じバージョン間でバックアップ、復元を行っていますが
何故かバックアップを作成した時点ではなく少し前の状態で復元されてしまいます
フルバックアップしたものと聞いているので最新の状態で復元されるものと考えていますが
バックアップの取り方に問題があるのでしょうか?
ちなみに復元する側はDBを一旦削除してから復元しています 自己解決しました
復元の際にタイムラインでバックアップポイントを最新に指定していなかったことが原因でした
デフォルトで最新になるものだと思い込んでいました SQL Server で SSD 使ってる方おられますか?
書き換え可能回数も随分と伸びたと聞くので、そろそろ大丈夫なのかなぁと。
HDD も併用するんなら、トランザクションだけ HDD に逃がしたほうがいいですかね? >>123
SSDの寿命って突然死するのか?
なんにしてもデータ保護考えたら単一ディスクはあり得んし >>123 は単にSSDを使ってもよいのかどうかという質問なんだろうね。スマートフォンのストレージがHDDでないことに疑問を持たないのかね? スマートフォンはSSDだったのか?
てっきりメモリかと思っていた コンシューマー向けのTLC/QLCを使うなんてことがなければいいんじゃないかとは思うが
3DXpoint高いお…