sql >> データベース >  >> RDS >> Mysql

PHPとMySQLを使用してユーザーの画像を保存するための最良の方法は何ですか?

    「最高」はあなたの目標によって異なります。

    ユーザーがアップロードした画像を保存する2つの主な方法は、バイナリコンテンツをBLOBとしてデータベースに保存するか、画像をドライブのどこかに保存して、どの画像がどこに属しているかを示すエントリをデータベースに配置することです。

    データベースに画像を配置することには、Webサーバー上でファイルシステムのアクセス許可を一切必要としないという利点があり、複数のWebサーバーからサイトを提供している場合の同期の問題を排除します。ただし、時間の経過とともにデータベースが巨大になり、テーブルを正しく設計しないと、パフォーマンスとスケーラビリティが完全に失われる可能性があります。

    画像をファイルシステムにファイルとして保存すると、ウェブサーバーは静的ファイルの提供に非常に優れているため、検索を非常に迅速かつ効率的に行うことができるという追加の利点があります。

    編集して追加

    ファイルの内容をデータベースに保存する場合は、すぐにアクセスする必要のあるテーブルに入れないでください。たとえば、ほぼすべてのページビューで検索される「ユーザー」テーブルがある場合、そのテーブルはではありません。 ファイルの内容を置く場所。代わりに、ファイルと関連するメタ情報を含む別の「画像」または「ファイル」テーブルを作成します。

    行ごとに多くのバイトをテーブルに入れると、そのテーブルの操作が非常に遅くなります。頻繁に使用されるテーブルでは、そのようなことは望ましくありません。



    1. データベースのインポートで渡されるスクリプトタイムアウトの指定

    2. MySQL:ALTER IGNORE TABLE ADD UNIQUE、何が切り捨てられますか?

    3. SQLテーブルの条件で列名として列値を選択する方法

    4. SQL Operations Studio(SQLOPS)とは何ですか?