データベース管理者

データベースのスキルを向上させ、コミュニティの他の人から学びたいデータベースの専門家向けのQ&A

2
ストアドプロシージャのパラメーターが多すぎますか?
SQL Server 2008でストアドプロシージャの記述を始めたばかりで、30以上のパラメーターがあります。10個以上のパラメーターを持つものを書いたことはありません。 コンテキストのために...この手順は、本質的になりますINSERT単一のテーブルに単一の行を。非常によく似たものもあります。やや小さいが; 同じテーブルでUPDATEを実行するバージョン。ほとんどの列は比較的小さく、intと文字列が混在しています(varchar(200))。 問題は何ですか。良いか悪いか; 多数のパラメーターを含む手順を作成すること、および他のパターンの検討を開始するしきい値はどれくらいですか?


1
PostgreSQLデータベースデータファイルの整合性チェック
PostgreSQLデータベースシステムを実行している場合、データベース全体の整合性が100%であることをどのように知ることができますか?基本的に、破損していないデータファイルとページがすべて100%良好であるかどうかを知るにはどうすればよいですか? Microsoft SQL Serverの世界には、問題があるかどうかを通知するDBCC CHECKDBを実行できるコマンドがあります。コマンドの詳細を知りたい場合は、次のリンクをご覧ください。DBCC CHECKDB(Transact-SQL) 私は妄想的なデータベース整合性を重視している人であり(DBAタイプの役割でデータベースを操作する人なら誰でもそうするべきです)、この種のことは夜によく眠れないようにします。このようなユーティリティは必須です!グーグルでの検索では、このようなツールでいくつかの試みが見つかりましたが、PostgreSQLプロジェクトで公式に承認されたツールでない限り、私はこの重要なものを信用しません。 ここに、私が本当の決定的な答えとは思わないもので、同様の質問をする人々へのいくつかのリンクがあります。そして私の意見では、PostgreSQLはOracleとMicrosoft SQL Serverが持っているように見えるいくつかのツールを用意する必要があることを示しています。 最初のリンクは、このテーマで見つけた最も興味深いものです。おそらくそれを要約する記事へのコメントは、「Postgresはデータベースの破損を特定して修復するのはかなり不自由です。それを検出する唯一の方法は、データベースをダンプするか、データベース内のすべてのテーブルから*を選択することです」 」 PostgreSQLが部分的なページ書き込みとデータ破損から保護する方法 データとインデックスファイルの破損の確認-Dev Shed ヘルプ:テーブルが壊れています! PostgreSQL:破損した主キー、一貫性のないテーブル 9.3にはいくつかの破損チェック機能がある可能性があると思います。必要に応じて、ページファイルのチェックを合計することを希望する可能性があります。そのため、ZFSやPostgresの将来のバージョンでページチェックサミングを使用することを検討している場合、状況は明るいように見えます。 https://commitfest.postgresql.org/action/patch_view?id=759 更新:2012年1月14日-ZFSに基づくファイルシステムを使用すると、データの各ブロックを合計してチェックすることで破損を検出できるようです。私はこれをさらに調べ、これがデータベースデータが静かに破損していないことを知って夜寝るのを可能にする回避策であるかどうかを確認する必要があります。 更新:2012年1月17日-ZFSで破損しているファイルを見つける方法。http://docs.oracle.com/cd/E18752_01/html/819-5461/gbbwl.html#gbcuz 更新:2014年4月14日9.3でデータチェックサムが取得されました。https://wiki.postgresql.org/wiki/What's_new_in_PostgreSQL_9.3

2
名前があいまいなプロシージャを削除するにはどうすればよいですか?
informixを使用しています... 私はそれをどうやってやったのか分かりませんが、私のデータベースには同じ名前の2つの手順があります。私がそれらを削除しようとすると DROP PROCEDURE myProc; その後、エラーメッセージが表示されます ERROR: Routine (add_adr_trigger_row) ambiguous - more than one routine resolves to given signature. Error Code: -9700 手順を削除するにはどうすればよいですか?

4
NULLはありませんが、「UTF8」をエンコードするための無効なバイトシーケンス:0x00
'mysqldump --compatible = postgresql'の出力をPostgreSQL 8.4.9にインポートしようとして過去8時間を費やし、この特定の問題について少なくとも20の異なるスレッドをここおよび他の場所で既に読んでいますが、実際に使用可能な答え。 MySQL 5.1.52データのダンプ: mysqldump -u root -p --compatible=postgresql --no-create-info --no-create-db --default-character-set=utf8 --skip-lock-tables rt3 > foo 宛先としてのPostgreSQL 8.4.9サーバー 「psql -U rt_user -f foo」を使用してデータをロードすると、レポートが作成されます(これらの多くは、1つの例です)。 psql:foo:29: ERROR: invalid byte sequence for encoding "UTF8": 0x00 HINT: This error can also happen if the byte sequence does not match the encoding …

3
オラクルは私をどうやって知るのですか?
それほど重要ではありませんが、私の好奇心をそそりました。 Oracle SQL Developer Toolsを使用して初めてOracle 10gデータベースにログインしました。 私の名前ではないもの(ズッキーニ)と呼ばれるマシンから、私の名前ではない一般的なユーザーログイン(nottstest2)を使用しました。私の名前はデータベース内のどこにも存在せず、ログインに関連付けられていません。 ただし、サーバーログには「Jon Hopkins」からの接続が表示されます。 私が誰であるかをどのように知るのですか?Windowsログインから何らかの方法で取得されていますか(シングルサインインを使用していません)。

4
SQL Serverエージェント経由でスケジュールされたジョブからバッチファイルを実行する方法
SQL Server 2008 R2でSQL Serverエージェントジョブ内から(Windows)バッチファイルを実行しようとしています。ジョブステップで、新しいステップを作成し、そのタイプを「オペレーティングシステム(CmdExec)」に設定しました。最初に、「コマンド」フィールドにバッチファイル名のみを入力しようとしました。ファイルが見つからないというエラーが発生します。 次に試しました:cmd.exe c:\ test.bat これは開始されますが、決して完了しません(実際に動作しているようには見えません)。 バッチファイル名を引用符で囲みました:cmd.exe "C:\ test.bat"ですが、それでも違いはありません。 これを機能させるための魔法の組み合わせは何ですか?

1
MySQLシャーディングとMySQL Cluster
パフォーマンスのみを考慮すると、MySQL ClusterはカスタムデータシャーディングMySQLソリューションを打ち負かすことができますか?シャーディング=水平分割 シャーディングについて言及するとき、たとえば、独立したMySQLインスタンス間でレコードを均等に分散するなど、アプリケーション層で行われるシャーディングを検討しています。2台のサーバーの場合、(key mod 2)になる可能性があります。
12 mysql  ndbcluster 

2
MySQLの行ベースのレプリケーションとステートメントベースのレプリケーションの違いは?
行ベースのレプリケーションとステートメントベースのレプリケーションの実際の違いは何ですか。私は実際にスレーブへの複製の効果の観点から見ています。 行ベースのレプリケーションを使用している場合、スレーブにどのような影響がありますか。ステートメントベースのレプリケーションを使用している場合、どのような影響がありますか? 次のパラメータも考慮してください。 replicate-ignore-db and replicate-do-db ありがとう....!

3
キー保存表の概念とは何ですか?
「結合ビューの更新」セクションのキー保存されたテーブルに関するOracleドキュメントを読みました。 ただし、簡単に理解できる方法は見つかりませんでした。 公式のOracleドキュメント以外のいくつかの簡単な概念の詳細を受け取りたいと思っています。
12 oracle 


5
コードブランチ間で共有されるデータベーススキーマを処理する効率的な方法は何ですか?
複数のブランチを持つプロジェクトで作業します。各ブランチは最終的にメインブランチにマージされ、新しい機能を開発するために本質的に分離されます。 MS SQL Serverであるデータベースには共有スキーマがありますが、各ブランチは進行に応じてスキーマに変更を加えます。 私の主な質問は、メインブランチから派生ブランチまでのスキーマの共有に対処する良い方法です。メインブランチに加えられた変更は、派生の新しい変更を踏むことなく、派生ブランチに簡単にマージされます。ブランチ?

3
ファイルからPostgreSQLデータベースにXMLを読み込むSQL
XMLファイルを読み込んでPostgreSQLのXML値にするには、どうすればSQLを記述できますか? PostgreSQLには、テキスト文字列をその型に解析する機能を備えたネイティブXMLデータ型がありXMLPARSEます。また、ファイルシステムからデータを読み取る方法もあります。特にCOPY声明。 しかし、ネイティブのPostgreSQL SQLステートメントを記述して、ファイルシステムエントリからコンテンツを読み取り、それを使用してXML値を設定する方法は見当たりません。これどうやってするの?
12 postgresql  xml 

2
MySQLでグローバル文字セットを構成する方法
my.cnfを介してMySQLの文字セットを変更しようとしましたが、失敗しました。以下にリストされている文字セット設定を追加しました。 # The MySQL server [mysqld] port = 3306 socket = /var/lib/mysql/mysql.sock skip-locking key_buffer = 16M max_allowed_packet = 1M table_cache = 64 sort_buffer_size = 512K net_buffer_length = 8K read_buffer_size = 256K read_rnd_buffer_size = 512K myisam_sort_buffer_size = 8M # ------------- MYSQL CHARSETS -------------- character_set_system = utf8 character_set_server = utf8 character_set_results = …
12 mysql  my.cnf 

1
MySQL Workbenchのデータベースサイズ
すべてのMySQL Workbenchデータベースが使用しているハードディスク上の合計サイズを見つけようとしています。 誰もこれを理解する簡単な方法を知っていますか? それ以外の場合、mysql / workbenchがWindowsマシンに生データを保存するために使用するデフォルトの場所は? 前もって感謝します!クインティス

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.