タグ

ブックマーク / gihyo.jp (22)

  • 第209回 MySQLのALTER TABLEステートメント実行時の注意点 | gihyo.jp

    今回はALTER TABLEステートメント実行時の注意点について紹介します。 MySQLを運用していると、サービスの仕様変更や新機能のために既存のテーブルに対してテーブル定義を変更することが多いと思います。その際によく起こる問題や注意点に説明します。 ALTER TABLEステートメント まずは、簡単にALTER TABLE ステートメントについて紹介します。テーブル定義を変更するにはALTER TABLEステートメントを利用します。MySQL 5.6以降からInnoDBのテーブルにおいて、オンラインDDLが可能になっています。連載においても第30回 InnoDBオンラインDDLについてにて紹介しています。 オンラインDDLでは、DDL実行に最小限の時間のロックを取得することで、そのDDLと並列で実行されるDMLの待機も最小限になります。そのため、サービス無停止でALTER TABLEス

    第209回 MySQLのALTER TABLEステートメント実行時の注意点 | gihyo.jp
    teckl
    teckl 2024/06/06
    MySQLでオンラインDDLする時に、 ALGORITHM=INPLACE,LOCK=NONE; しておけばいいのかと思ってたけど、8.0で単純なカラム追加程度であれば ALGORITHM=INSTANT の方が良さそうだったのか…
  • 『WEB+DB PRESS』 休刊のお知らせ:WEB+DB PRESS

    WEB+DB PRESSは,2023年8月発売のVol.136をもって隔月刊誌としては休刊させていただきます。物価上昇による製作費の高騰など諸般の事情により,今回の決定に至った次第です。 突然の休刊案内にてたいへん恐縮ではございますが,何卒ご理解を賜りますよう,お願い申し上げます。 22年以上の長きにわたり,絶大なご支援をいただきましたことを,厚く御礼申し上げます。 弊誌で扱っていた分野のコンテンツは,今後も弊社刊行のSoftware Designやgihyo.jp,書籍などで提供させていただきます。また,必要な場合には「特別号」の編集・刊行なども検討してまいります。 最後に,皆様の一層のご活躍を心より祈念しております。

    『WEB+DB PRESS』 休刊のお知らせ:WEB+DB PRESS
    teckl
    teckl 2023/05/01
    おぉ…これは厳しい。。今まで本当に本当にお世話になりました。皆さんもっと本を買いましょう。。
  • 第723回 複雑なコマンドパイプラインを簡単に組み立てる方法 | gihyo.jp

    パイプライン処理とは GUIは非常に直感的です。はじめて使うアプリであっても、なんとなくそれなりに動かせてしまうという点で、優れたインターフェイスと言えます。しかし効率を突き詰めると、軍配が上がるのはGUIよりもCLIでしょう。連載の読者であれば、UnixライクなOSのCLIが持つパワーについては当然ご存知かと思います。 とはいえ、古典的なUnixコマンドの多くは、単体ではそれほど強力なものではありません。というのも、ひとつひとつのコマンドはシンプルに、特定の用途においてのみ上手く動作するよう設計されていることがほとんどだからです。こうしたコマンド群に無限のシナジーを与えるのが「パイプライン処理」です。標準入出力を通じて複数のコマンドを直列に繋げることで、複雑な処理をインスタントに組み立てることができるパイプラインは、まさにUnix哲学の体現であり、CLIの真髄はここにあると言ってもよい

    第723回 複雑なコマンドパイプラインを簡単に組み立てる方法 | gihyo.jp
    teckl
    teckl 2022/07/14
    これ最高なのでは…
  • 第67回 GitHub APIによるチーム開発の効率化 ―基本操作から、GitHub Webhooksの活用まで(1) | gihyo.jp

    Perl Hackers Hub 第67回GitHub APIによるチーム開発の効率化 ―基操作から、GitHub Webhooksの活用まで(1) 連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーはtecklこと菅井茂樹さんで、テーマは「GitHub APIによるチーム開発の効率化」です。 稿のコードは、執筆時点(2021年3月)の最新であるPerl 5.32.1で動作確認を行っています。サンプルコードはWEB+DB PRESS Vol.122のサポートサイトから入手できます。 チーム開発をもっと便利にするGitHub API ソフトウェア開発にとって欠かせない存在となったGitHubですが、GitHub APIを使用することでさらに便利に活用できます。アイデアしだいで、普段手動で行っている操作を自動化したり、管理コストを削減したり、外部のツールと連携さ

    第67回 GitHub APIによるチーム開発の効率化 ―基本操作から、GitHub Webhooksの活用まで(1) | gihyo.jp
    teckl
    teckl 2021/06/23
  • 2021年のウェブ標準とブラウザ | gihyo.jp

    2021年になりましたね。 矢倉眞隆(myakura)です。ウェブ標準やブラウザに興味のあるウェブ開発者です。gihyo.jpでは2009年に「Web標準とその周辺技術の学び方」という連載をしていました。 今回は昨年の泉水さんに代わり、2021年のウェブ標準やブラウザの動向を占おうと思います。2020年は世界もブラウザもそれなりに大きな出来事がありましたので、2020年の動きをまずおさえ、そのうえで2021年はどうなるのかを考えてみました。 W3Cのプロセス改訂でLiving Standardライクな仕様の改訂が増えていく W3Cは2020年9月に、新しいプロセス文書と特許ポリシーを公開しました。 新しい文書プロセスはW3Cの組織の定義や標準化の流れ、意思決定などについて定めた文書です。ここ数年は毎年更新されていますが、2020年はこれまでと比べて最大級とプレスリリースでもうたわれています

    2021年のウェブ標準とブラウザ | gihyo.jp
    teckl
    teckl 2021/03/18
    User-Agent Client-Hints (UA-CH)、なんだかんだで世の中の動きが鈍そうかな、とか思ってたけどChrome 100がもう間近に迫ってるので安易な2桁の正規表現が影響を受けるというのもあったのか、大変そうだ…
  • 第40回 カラムのデータ型の異なる行ベースレプリケーションの挙動 | gihyo.jp

    このオプションは動的に変更可能ですが、レプリケーションの再起動が必要です(STOP SLAVEとSTART SLAVE⁠)⁠。 以下、各モードについて説明します。 ALL_LOSSY このモードはスレーブのカラムの型がマスターのカラムの型よりも小さい場合、データを切り捨ててしまうかもしれない変換(不可逆変換)を許可します。Int型とBigint型や、varchar型とchar型などの互換性のある型であれば、レプリケーションされたデータをスレーブの型に合わせてデータを適合するということです。 たとえば、マスターがvarchar(20)でスレーブがvarchar(10)だった場合に、20文字のデータがレプリケーションされたときは10文字目までは格納して、それ以降は切り捨てて登録されます。マスターとスレーブ間でデータの不整合が起こる可能性のあるモードです。 ALL_LOSSYの動作 前述で使用し

    第40回 カラムのデータ型の異なる行ベースレプリケーションの挙動 | gihyo.jp
    teckl
    teckl 2020/12/02
    MySQL 5.7から行ベースレプリケーションになったので、 slave_type_conversions を ALL_NON_LOSSY する羽目に…
  • 第6回 mysqlコマンドラインクライアントにページャーを指定する | gihyo.jp

    勉強のためにMySQLをインストールしてデータを投入してみたはいいものの…バンドルされている標準のmysqlコマンドラインクライアントは、使いにくくありませんか? 飾りっ気のないプロンプトにパースが面倒なASCIIの罫線、無いも同然なTabキー補完、間違えて10万行くらいヒットしてしまうと見えなくなる先頭の行…。 今回はそんな悩みを解決するためのmysqlコマンドラインクライアントのTIPSとして、pagerサブコマンドを紹介します。この機能はmysqlコマンドラインクライアントの機能であるため、それ以外のコマンドラインクライアントでは利用できません。また、Windows版のmysqlコマンドラインクライアント(サーバはWindows版のものでも構いません。クライアントです)はページャーに対応していないのでごめんなさい。 デモンストレーション環境について 去る2015/10/21、MySQ

    第6回 mysqlコマンドラインクライアントにページャーを指定する | gihyo.jp
    teckl
    teckl 2020/11/13
    pager less はよく使ってたけど、 `pager grep -A 20 'BUFFER POOL AND MEMORY' ` とか、 `pager ssh ipaddr "cat - > ~/result.txt" ` とかなんでも出来たのか…便利すぎる
  • 第579回 高速で便利なgrep「ripgrep」を活用する | gihyo.jp

    数多くあるUnixコマンドの中でも、もっとも利用頻度の高いもののひとつがgrepではないでしょうか。設定ファイルやログから該当する箇所を調べたり、ソースコードを検索したり、あるいはパイプラインのフィルタとして利用したりと、あらゆる場面で活躍する超基ツールです。 とはいえgrepは機能がシンプル過ぎるため、もう少し空気を読んだ、賢い検索をしてくれる代替ツールもまた数多く存在します。たとえば連載287回ではThe Silver Searcher(ag)を紹介しました。 とはいえこれはもう6年も前の記事です。ag以降も、いろいろな検索ツールが登場しています。そこで今回はさらに高速な検索ツールである、ripgrepを紹介します。 ripgrepとは ripgrepとは、公式サイトによると「ripgrep recursively searches directories for a regex

    第579回 高速で便利なgrep「ripgrep」を活用する | gihyo.jp
    teckl
    teckl 2020/07/17
    あとで入れてみよう > 人類にはEmacsからripgrepを呼び出すインターフェイスが必要
  • 第25回 cron周りのベストプラクティス(1) | gihyo.jp

    連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーはsongmuさんこと松木雅幸さんで、テーマはcronです。 なお稿のサンプルコードは、誌サポートサイトから入手できます。 cronとは? cronは指定日時にジョブの自動実行を行うジョブスケジューラです。UNIX系のOSであれば実装の違いこそあれ、ほぼ標準でインストールされています。 作業自動化や、タスクを自動実行したいなどといった場合にcronは避けては通れません。Perlでバッチ処理を書く際などに多くの人が活用していると思いますが、ベストプラクティスがわからず恐る恐る使っている人も多いのではないでしょうか。 稿では、cron活用におけるベストプラクティスについてお話します。 cronの使いどころ cronの使い途は、主に次の3つが考えられます。 a.アプリケーションのジョブの実行 b.システムに関わる

    第25回 cron周りのベストプラクティス(1) | gihyo.jp
    teckl
    teckl 2019/07/16
    cronではシェルと違って右辺の環境変数は展開されないので、 `PATH=$PATH:/usr/local/bin` は誤り
  • 第55回 innodb_file_per_tableオプションについて | gihyo.jp

    innodb_file_per_tableというオプションはご存知でしょうか。このオプションはMySQL4.1.1から導入され、MySQL 5.6.6とそれ以降ではデフォルトでONになっているオプションです。 innodb_file_per_tableを有効にすることで、InnoDBの各テーブルのデータとインデックスを個別のファイル管理にすることができます。もしこのオプションがOFFの場合、InnoDBの各データはibdata1というシステムテーブルスペースにデータが保持されていきます。以前からMySQLを扱っている方は、このibdata1の肥大化に悩まされたことがあるのではないでしょうか? 今回は、デフォルトONになったためにあまり意識しなくなったかもしれないinnodb_file_per_tableについて、できることを説明したいと思います。 innodb_file_per_table

    第55回 innodb_file_per_tableオプションについて | gihyo.jp
    teckl
    teckl 2019/02/22
    トランスポータブルテーブルスペースでのテーブル移動、こっちのがわかりやすい。データ更新が無ければDISCARD TABLESPACE -> ibd コピー -> IMPORT TABLESPACE で良さそうな感じかな
  • 第11回 MySQL Workbenchを使って既存のデータベースからER図を作成する | gihyo.jp

    ちょっと気が早い気がしますが、そろそろ年度末に向けてさまざまな準備を考えはじめる時期だと思います。異動や入退社に備えて、ちゃんとドキュメントを整えていますか。 特にデータベースを使用しているプログラムに関しては、データベース内の情報を正しく活用するためにはどのようなデータ構造があって、どのようなデータが入力されているのかを正しく理解する必要があります。正しく理解ができていないと新規にプログラムを適切に追加したり、今までのプログラムを適切に修正することが難しくなります。 また、CREATE TABLE文やCREATE INDEX文などといった、DDL(Data Definition Language)と呼ばれるデータ構造を定義するために使われるSQLが残っているから大丈夫、という方もいらっしゃると思いますが、普段触っている環境ではなく、別のデータベースをコードやDDLを眺めながら、関連を考え

    第11回 MySQL Workbenchを使って既存のデータベースからER図を作成する | gihyo.jp
    teckl
    teckl 2018/05/24
    MySQL Workbenchでお手軽にER図が作成出来ると知って試してみたけど、テーブル数が多すぎてまともな図にならなかった… でも新しく考えるには便利そう
  • WEB+DB PRESS Vol.100

    2017年8月24日紙版発売 2017年8月24日電子版発売 B5判/160ページ 定価1,628円(体1,480円+税10%) ISBN 978-4-7741-9129-4 ただいま弊社在庫はございません。 Amazon 楽天ブックス honto ヨドバシ.com Fujisan(定期購読のみ) 電子版 Gihyo Digital Publishing 書のサポートページサンプルファイルのダウンロードや正誤表など 特集1 作って学ぶ人工知能 自然言語処理,機械学習,深層学習がまるわかり! 今,人工知能が注目を集めています。そこで特集では,人工知能がどのような技術でできているのかについて,その中でも特に「人を支援する人工知能」で使われている自然言語処理,機械学習,深層学習の3つについて,具体的なチュートリアルや実用化のノウハウを交えつつ解説していきます。 特集2 対応必須! 完全HT

    WEB+DB PRESS Vol.100
    teckl
    teckl 2017/08/22
    WEB+DB PRESS、ついにVol.100ですかー。 人工知能に完全HTTPS化、今号も良さそう
  • もっと自在にサーバを使い倒す 業務に役立つPerl

    2012年4月11日紙版発売 2013年1月23日電子版発売 木裕紀 著 A5判/352ページ 定価3,058円(体2,780円+税10%) ISBN 978-4-7741-5025-3 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing honto 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 書は2010年4月から2011年3月までの1年間,『Software Design』に連載された記事を,大幅に加筆・修正してまとめた書籍です。書の内容にはサンプルコードがたくさん含まれており,実践ですぐに使用できるものばかりです。分野ごとに構成されているので,リファレンスとしても使うことができます。正規表現,データベース,Webフレームワーク,標準関数,標準モジュールなど,仕事で必

    もっと自在にサーバを使い倒す 業務に役立つPerl
    teckl
    teckl 2017/08/16
    Perl欲が高まったので今更ながら「もっと自在にサーバを使い倒す 業務に役立つPerl」電子書籍版ポチりました。あと読もう http://gihyo.jp/book/2012/978-4-7741-5025-3
  • 第3回 すべてのMySQLユーザに高速な全文検索機能を! - mroongaの紹介 | gihyo.jp

    前回の地価マップでの事例紹介では、Ruby on Railsからgroongaとmroongaを使って位置情報検索をした事例を紹介しました。Active Recordを拡張して位置情報検索をするためのgemとその使い方も紹介していたので、Ruby on Railsユーザにとって実用的な内容だったのではないでしょうか。 今回は、前回使い方を紹介したmroongaについて、さらに紹介します。前回はmroongaの使い方がでてきましたが、今回は使い方の紹介はしません。その代わり、mroonga自身のことについて紹介します。mroongaの歴史、大事にしていること、さらにどのようなアーキテクチャになっているかについて説明します。 自分のアプリケーションで利用するプロダクトを検討するときに、プロダクトがどのような方向で作られているかを考慮していますか? 自分のアプリケーションが大事にしたいことをその

    第3回 すべてのMySQLユーザに高速な全文検索機能を! - mroongaの紹介 | gihyo.jp
    teckl
    teckl 2013/10/04
    良さそう、あとで試す
  • #22 Gitメンテナ 濱野 純 | gihyo.jp

    今回のゲストは、分散バージョン管理システムGitのメンテナで『入門Git』(⁠注1)の著者、濱野純さんです。Linuxカーネルの開発者、Linus Torvaldsさんから引き継いでGitのメンテナになった経緯から、対談スタートです。 (撮影:武田康宏) Gitに関わった経緯 弾:Gitに関わったきっかけは? 濱:2005年の4月にLinuxカーネルのバージョン管理システムとして使われていたBitKeeperが使えなくなる[2]からということで、Linus君がいろいろありものを探したんだけど、使えるものがなくて、誰かがいいのを作ってくれるまでのつなぎというつもりで、とりあえず自分でもコードを書いた、というアナウンスをしました。それをカーネルメーリングリスト(ML)で見ていたんですが、たまたまボクの業がプロジェクトプロジェクトの合間だったんです。なんかおもしろそうなこと始まってるじゃん、

    #22 Gitメンテナ 濱野 純 | gihyo.jp
    teckl
    teckl 2013/02/05
    これはアツイなぁ…
  • Webサービスつくってるけど何か質問ある?―「ボケて」のゆーすけべーと「nanapi」のけんすうが答えました!(前編) | gihyo.jp

    Webサービスつくってるけど何か質問ある?―「ボケて」のゆーすけべーと「nanapi」のけんすうが答えました!(前編) 秋葉原の書泉ブックタワー9Fのイベントスペースにて、11月30日(金)19時より和田裕介さん著『Webサービスのつくり方 ――「新しい」を生み出すための33のエッセイ』出版記念イベント「Webサービスつくってるけど何か質問ある?」が開催されました。この記事ではその内容についてレポートします。開始時刻になっても和田さんが現れないハプニングはありましたが、イベント開始の数分後に和田さんも会場に姿を現し、その後はつつがなく進行していきました。 知り合ったきっかけは1981年生まれの会 イベントには、『⁠Webサービスのつくり方 ――「新しい」を生み出すための33のエッセイ 』著者であり「君のラジオ」や「ボケて」の開発者としても知られるエンジニアの「ゆーすけべー」こと和田裕介さん

    Webサービスつくってるけど何か質問ある?―「ボケて」のゆーすけべーと「nanapi」のけんすうが答えました!(前編) | gihyo.jp
    teckl
    teckl 2012/12/12
    >数日でプロトタイプが完成しないようなアイデアには無駄が多く,核となるアイデアだけに絞って実装すべき
  • ニコニコ生放送に見る Redis 活用ノウハウ 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    ニコニコ生放送に見る Redis 活用ノウハウ 記事一覧 | gihyo.jp
  • 第1回 memcachedの起動オプションを把握しよう | gihyo.jp

    1.4系で新しく追加された主な機能しては バイナリプロトコルの導入 マルチスレッドの標準化 統計の強化 などが上げられます。この1.4系の機能の詳細については前坂徹氏の連載「memcached 1.4の到来」が参考となります。ここではバージョン1.2.5と最新の1.4.5の起動オプションを比較しながら、新しく追加された機能や実際の運用で用いられる起動オプションについて説明します。 1.2系と1.4系の起動オプションの違い まず、memcachedの起動オプションの一覧(ヘルプ)を確認しましょう。memcachedのヘルプを出力するには、「⁠-h」オプションを使います。 $ memcached -h memcached 1.x.x -p <num> TCP port number to listen on (default: 11211) -U <num> UDP port number t

    第1回 memcachedの起動オプションを把握しよう | gihyo.jp
    teckl
    teckl 2012/09/27
    >stats settings
  • 第9回 NHN Japan執行役員/CTO 池邉智洋氏に訊く(前編)―「放置」と「無茶ぶり」の裏に隠されたNHN Japan流の学習環境 | gihyo.jp

    Webクリエイティブ職の学び場研究 第9回NHN Japan執行役員/CTO 池邉智洋氏に訊く(前編)―「放置」と「無茶ぶり」の裏に隠されたNHN Japan流の学習環境 NHN Japanといえば、「⁠ハンゲーム」「⁠NAVER」「⁠livedoor」を展開する国内最大手のインターネット企業。2012年1月1日には、ネイバージャパン、ライブドアと経営統合し、今後さらなるパワーアップが期待されています。今回は同社を訪問し、ライブドアの前身、オン・ザ・エッヂ時代から技術部門を支えてこられた現NHN Japan 執行役員/CTOの池邉智洋さんにお話を伺います。技術力に定評がある同社ですが、「⁠研修はほとんどやらない」職場環境。「⁠放置」と「無茶ぶり」の裏側に、どんな人材育成の仕組みが隠されているのかを探ってきました。 NHN Japan 執行役員/CTOの池邉智洋氏 大前提は、独特の「Webの

    第9回 NHN Japan執行役員/CTO 池邉智洋氏に訊く(前編)―「放置」と「無茶ぶり」の裏に隠されたNHN Japan流の学習環境 | gihyo.jp
  • 第42回 Template Toolkit:Perl製テンプレートエンジンのデファクトスタンダード | gihyo.jp

    組み合わせ自由なツールキット Template Toolkit、通称TTは、その名前からもわかるように、もともとは単なるテンプレートエンジンではなく、テンプレートエンジンをつくるためのツール群をまとめたものです。そのツール群を組み合わせた標準のエンジン、標準のフロントエンドと呼べるものもありますが、これはあくまでもTTのよくある利用法のひとつであって、そのすべてではありません。 たとえば、CPANにはApache::Templateという、TTのエンジン部分をmod_perl用にカスタマイズしたうえでmod_perl用のフロントエンドをかぶせるモジュールがありますが、これを使えば、最初に多少の設定は必要になるものの、あとはTTのテンプレートを適切なパスに置くだけで、パラメータの取得からルーティング、レンダリングまでよしなに計らってくれるようになります(TTの文法をサポートしたPHPのような

    第42回 Template Toolkit:Perl製テンプレートエンジンのデファクトスタンダード | gihyo.jp