タグ

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

  • 第153回 mysqlpumpを使ってバックアップを取ってみる | gihyo.jp

    皆さんはMySQLからデータを論理バックアップする際にどんなコマンドを使っているでしょうか? 5.7より前のバージョンを利用していた場合は、第15回 mysqldumpを使ってバックアップするや第62回 MySQLのクライアントプログラムいろいろ[その2]で紹介したmysqldumpを使用していることが多いのではないかなとは思います。 今回は、MySQL 5.7.8から導入されたmysqlpump(誤字じゃないです)について紹介してきます。 検証環境 今回は、第125回 phpMyAdminでDockerで建てたMySQLにアクセスするで記載したdocker-composeを利用して作成します。手元で簡単に試せるように、GitHubのわたしのレポジトリにサンプルコードとして置いてあるので、気軽に試したい方はgit cloneして試してみてください。試すにはdockerdocker-com

    第153回 mysqlpumpを使ってバックアップを取ってみる | gihyo.jp
    YAA
    YAA 2023/03/25
  • 2021年4月23日号 Ubuntu 21.04 “Hirsute Hippo”のリリース、WSLgのプレビュー | gihyo.jp

    Ubuntu Weekly Topics 2021年4月23日号Ubuntu 21.04 “Hirsute Hippo”のリリース、WSLgのプレビュー Ubuntu 21.04 “Hirsute Hippo”のリリース 2021年4月22日(現地時間⁠)⁠、Ubuntu 21.04 “⁠Hirsute Hippo⁠”(ひげもじゃのカバ)がリリースされました。 Intel Rocket Lake(≒第11世代Coreシリーズ)やIris Xe(同Core内蔵の新GPU⁠)⁠、AMD Van Gogh(Zen2ベースの省電力バージョンMobile Ryzenシリーズ)といった新しいハードウェアに対応する最初のUbuntuです[1]⁠。いつものようにリリースノートを熟読することに加えて、Ubuntu Weekly Recipe 第663回もあわせて確認の上、バックアップを取ってからアップグレー

    2021年4月23日号 Ubuntu 21.04 “Hirsute Hippo”のリリース、WSLgのプレビュー | gihyo.jp
    YAA
    YAA 2021/04/25
  • 第9回 ログのすすめ | gihyo.jp

    今回のテーマはログである。ログと言ってもサーバやアプリケーションのログのことではない。今回取り上げるのは作業ログである。作業ログと言えば、古くはChangeLogメモやhowm、最近ではEvernoteMarkdown形式でのメモなど、いくつかの流派が存在する。 作業ログを取る目的はさまざまだ。ライフログ、つまり自分の人生のログを取る目的のものもあれば、未来の自分が検索することを見越して書くものもある。今回取り上げるのは、物事を前に進めるための作業ログである。筆者は記憶力が悪い。暗記モノが昔から苦手だ。また、気が散りやすく数分前に何をやっていたかさえ思い出せないこともある。そんな限られた能力で、難しいタスクをこなすためには工夫が必要である。そのための工夫の一つがログを取ることだった。今回はその作業ログについて、できるだけ実例に近いものを取り上げながら説明したい。 難しいタスク 仕事で、あ

    第9回 ログのすすめ | gihyo.jp
    YAA
    YAA 2020/11/14
  • 2020年2月6日 sudo、10年来のバッファオーバーフロー脆弱性を修正 | gihyo.jp

    sudoのメイン開発者であるTodd Millerは2月5日、pwfeedbackオプションが有効な場合にバッファオーバーフローを引き起こす可能性のあるバグが2009年のバージョン1.7.1より存在しており、1月31日にリリースした「sudo 1.8.31」においてその修正を含むアップデートを行ったことを明らかにした。 Buffer overflow when pwfeedback is set in sudoers この脆弱性は「CVE-2019-18634」として2019年10月にAppleのJoe Vennixにより最初に報告され、以後、追跡が行われてきた。Millerによれば、sudo 1.7.1からsudo 1.8.30までのバージョンがこの脆弱性の影響を受け、とくにsudo 1.26以前のバージョンを使っている場合は注意が必要だが、pwfeedbackオプションを有効にしていな

    2020年2月6日 sudo、10年来のバッファオーバーフロー脆弱性を修正 | gihyo.jp
    YAA
    YAA 2020/02/07
  • 2019年5月31日 Fedora、RPMパッケージの圧縮アルゴリズムをxzからZstdに変更へ | gihyo.jp

    Linux Daily Topics 2019年5月31日Fedora、RPMパッケージの圧縮アルゴリズムをxzからZstdに変更へ リリースされてからちょうど1ヵ月が経過した「Fedora 30」だが、プロジェクトチームはすでに次期リリース「Fedora 31」に向けて数多くのアップデートを検討中だ。その中でも比較的大きな動きとして、RPMパッケージの圧縮アルゴリズムを長年使ってきたxzからZstdへと変更する可能性が強くなってきている。 Changes/Switch RPMs to zstd compression -Fedora Project Wiki この提案を行ったのはRed Hatでプリンシパルソフトウェアエンジニアを務めるDaniel Machで、現在、バイナリRPMの圧縮に使われているxz(レベル2)をZstd(レベル19)に変更することで、解凍時に劇的なパフォーマンス向

    2019年5月31日 Fedora、RPMパッケージの圧縮アルゴリズムをxzからZstdに変更へ | gihyo.jp
    YAA
    YAA 2019/05/31
  • 2018年4月27日号 Ubuntu 18.04 LTS “Bionic Beaver”のリリース, Spectre/Meltdown対策(ひとまず)完結編 | gihyo.jp

    Ubuntu Weekly Topics 2018年4月27日号Ubuntu 18.04 LTS “Bionic Beaver”のリリース, Spectre/Meltdown対策(ひとまず)完結編 Ubuntu 18.04 LTS “Bionic Beaver”のリリース 2018年4月26日(現地時間⁠)⁠、Ubuntu 18.04 LTSがリリースされました。コードネームは“⁠Bionic Beaver⁠”(⁠『⁠生体工学のビーバー』もしくは『バイオニック・ビーバー⁠』⁠)となり、略称としては「bionic」が使われます。Ubuntuにとって7番目のLTSリリースとなります。 bionicは『UnityをあきらめてGNOMEに回帰』してからの最初のLTSリリースであり、特にデスクトップ環境においては、16.04 LTSやそれ以前のLTSからの乗り換えには大きな変更を伴うことになります。

    2018年4月27日号 Ubuntu 18.04 LTS “Bionic Beaver”のリリース, Spectre/Meltdown対策(ひとまず)完結編 | gihyo.jp
  • 2016年12月21日 スワップパーティションはもういらない ―Ubuntu、Zapusでは"Swapfiles"に | gihyo.jp

    Linux Daily Topics 2016年12月21日スワップパーティションはもういらない ―Ubuntu、Zapusでは"Swapfiles"に Canonicalのソフトウェアエンジニアであり、Ubuntuの開発者でもあるDimitri John Ledkovは12月16日(英国時間⁠)⁠、自身のブログにおいて、2017年4月にリリース予定の「Ubuntu 17.04(開発コード"Zesty Zapus"⁠)⁠」ではインストールの際にこれまでデフォルトでディスク上に作成していたスワップパーティションを作成せずに、新たに"Swapfiles"を使う予定であることを明らかにした。 Surgut: Swapfiles by default in Ubuntu Ledkovは「メモリカードが4MBの時代はもう過ぎた。そしてディスクはNVMeやSSDの時代になっている。高性能なディスク上に

    2016年12月21日 スワップパーティションはもういらない ―Ubuntu、Zapusでは"Swapfiles"に | gihyo.jp
    YAA
    YAA 2016/12/21
  • 2016年7月11日 32ビットよ、さようなら ―i386アーキテクチャを捨てる時期に入ったLinux | gihyo.jp

    Linux Daily Topics 2016年7月11日32ビットよ、さようなら ―i386アーキテクチャを捨てる時期に入ったLinux 32ビットサポートはもう時間のムダだ―ここ1、2年、メジャーなLinuxディストリビューションの開発者たちからこういう声を聞く機会は日ごとに増えてきた。そして、Linux格的にi386系32ビットプロセッサに見切りをつけるその日は、着々と近づいているようだ。 6月28日(世界標準時⁠)⁠、Ubuntuデベロッパのディミトリ・レドコフ(Dimitri Ledkov)がUbuntu開発者メーリングリストに投稿した「Ubuntu 18.04 LTSにおけるi386のインストレーションメディアとサポートについて」という内容がLinux界隈でちょっとした話題となった。 「32ビットの開発はタダではない」―レドコフはすでに主流ではなくなってから久しい(そしても

    2016年7月11日 32ビットよ、さようなら ―i386アーキテクチャを捨てる時期に入ったLinux | gihyo.jp
    YAA
    YAA 2016/07/12
  • 2015年のWeb標準 | gihyo.jp

    株式会社ミツエーリンクスの渡邉卓です。昨年の「2014年のWeb標準」と同様に、2015年もWebコンテンツのフロントエンド設計および実装に関連した各種標準や、周辺領域の動きに関する短期的な予測を寄稿させていただきます。 2015年のWeb標準については「より広範なHTML5仕様の一般化・HTML5.1仕様の利用増加」「⁠ECMAScript 6仕様の利用増加」「⁠IE7・IE8 未サポートWebサイト増加」をキーワードとして取りあげます。 より広範なHTML5仕様の一般化・HTML5.1仕様の利用増加 2014年10月28日、ついにHTML5がW3C勧告 (Recommendation) となりました。すでに多方面で利用されているHTML5仕様ですが、勧告になったことで、今まで利用を躊躇していた方々にも確実に浸透していくと予想できます。詳細は後述しますが、現役のWebブラウザでありながら

    2015年のWeb標準 | gihyo.jp
    YAA
    YAA 2015/01/05
    >非常にかいつまんでいえば「IE7,IE8,IE10のサポートを,2016年1月12日に終了する」
  • 第18回 Amon2によるWebアプリケーションの高速開発(3) | gihyo.jp

    (1)はこちら、(⁠2)はこちらから。 スケルトンに掲示板機能を付けてみる スケルトンを眺めているだけではおもしろくないので、スケルトンをベースに実際に掲示板機能を付けてみましょう。 掲示板のスキーマ 今回、セットアップが簡単なようにデータベースにはSQLite3を用います。sql/sqlite3.sqlに次のように書きましょう。 CREATE TABLE IF NOT EXISTS sessions ( id CHAR(72) PRIMARY KEY, session_data TEXT ); CREATE TABLE IF NOT EXISTS entry ( entry_id INTEGER NOT NULL PRIMARY KEY, body varchar(255) not null ); sessionsテーブルはセッションの保存用テーブルです。 コントローラの実装 コントロー

    第18回 Amon2によるWebアプリケーションの高速開発(3) | gihyo.jp
    YAA
    YAA 2014/12/10
  • 第21回 Carton & cpanm―Perlモジュール管理最新事情(3) | gihyo.jp

    (1)はこちら、(⁠2)はこちらから。 Carton Cartonもcpanmと同様に、宮川達彦さんを中心に開発しているツールです。Cartonがどんなツールかについては、PODにズバリな一文があるので引用します。 carton is a command line tool to track the Perl module dependencies for your Perl application. 「Cartonとは、アプリケーションにおけるPerlモジュールの依存関係を管理するコマンドラインツール」というわけです。 また、PODのNAMEセクションには次の記述があります。 Carton - Perl module dependency manager (aka Bundler for Perl) Rubyでお馴染みのBundlerという単語が出てきました。Rubyを使う人にはこちらの

    第21回 Carton & cpanm―Perlモジュール管理最新事情(3) | gihyo.jp
    YAA
    YAA 2014/12/10
  • 弊社ホームページ改ざんに関するお詫びとご報告 | gihyo.jp

    弊社ホームページにおいて、2014年12月6日11時~14時のあいだ、第三者からの不正アクセスによりサイトが改ざんされていた事が判明いたしました。ご利用頂いておりますユーザの皆さまにおかれましてはご迷惑をお掛けいたしまして、深くお詫び申し上げます。 なお、現在は被害を受けたサーバは復旧作業を実施済みです。ご利用ユーザーの皆さまの個人情報流出等は、現在のところ確認されておりません。 被害対象サイト/コンテンツ URL:http://gihyo.jp 改ざん内容とその影響 サーバの中身を入れ替えられ、外部のサイトにリダイレクトされるように設定されていた。 リダイレクトされていたサイト(アクセスしないようご注意ください⁠)⁠ www.koushin-lawfirm.net live.livelistingreport.com 現在把握している改ざんされていた可能性がある期間 2014年12月6日

    弊社ホームページ改ざんに関するお詫びとご報告 | gihyo.jp
    YAA
    YAA 2014/12/08
  • 第26回 Perlで困ったときの調べ方(1) | gihyo.jp

    連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーはcharsbarこと石垣憲一さんで、テーマは困ったときの調べ方です。 検索エンジンを頼りづらいPerl Perlを使い始めて間もない人を悩ませる問題の一つに、複雑なデータ構造のデリファレンスや、配列・ハッシュのスライス、コンテキストを特定するための演算子、特殊変数など、各種の記号や括弧を駆使したPerl特有の書き方がGoogleなどの検索エンジンでは事実上検索できない、というものがあります。また、モジュールを使えば楽ができると知ってはいても、結局どのモジュールを使えばよいかよくわからない、というのもよく聞く悩みです。 稿では、このようなPerlを使っていて困ったときの調べ方をおさらいします。 Perl特有の書き方を調べる 書籍の目次や索引から調べる Perlコミュニティは総じて後方互換性を大事にしてきました。

    第26回 Perlで困ったときの調べ方(1) | gihyo.jp
    YAA
    YAA 2014/11/18
  • 2014年9月26日号 14.10の開発・“shellshock”とその対応・UWN#384 | gihyo.jp

    Ubuntu Weekly Topics 2014年9月26日号14.10の開発・“shellshock”とその対応・UWN#384 14.10のFinal Betaとそれに伴うテスト 14.10の開発は無事にFinal Betaに達し[1]⁠、恒例のテスト要請が行われています。14.10のリリースイメージに何らかのバグがあっては困る場合はテストを、あるいはすでにバグを見つけている場合は速やかな報告が必要なフェーズです。近年はこの時期のリリースであっても一部の例外を除いて比較的安定しているため[2]⁠、「⁠次リリースを体験してみる」意味でも良いタイミングです。 ただし、あくまで開発版であり、リリース版に比べると実施されたQAの分量は少ないため、バックアップや予備機の準備は必須です。 なお、多言語入力回りについてはFcitxのMIRが現状でまだ完了しておらず、Unityへの組み込みが現在もま

    2014年9月26日号 14.10の開発・“shellshock”とその対応・UWN#384 | gihyo.jp
  • 第4回 Hubotのスクリプトを書いてみる | gihyo.jp

    今回は、Hubotのスクリプトが動く仕組みについて説明し、基的な機能であるチャットでの受け答えを実装する方法を説明した後に、その他の機能について紹介します。 スクリプトの基 Hubotがスクリプトを読み込み実行する仕組みを説明するために、“⁠hello⁠”と挨拶するとHubotが“⁠hi⁠”と返事する単純なスクリプトのサンプルを示します。 hello.coffee module.exports = (robot) -> robot.hear /hello/, (msg) -> msg.reply 'hi' このサンプルコードの一番外側を見ると、module.exportsに関数を代入しています。このmodule.exportsは、Node.jsでモジュールを作るための仕組みです。つまり、Hubotのスクリプトとは、引数を1つとる1つの関数を提供するNode.jsのモジュールということに

    第4回 Hubotのスクリプトを書いてみる | gihyo.jp
    YAA
    YAA 2014/07/03
  • 第3回 Hubotを色々なサービスと繋げてみる | gihyo.jp

    スクリプトが使用する設定 Hubot自身が使用する設定値は、コマンドライン引数でも環境変数でも指定できますが、Adapterや個別のスクリプトの設定値は環境変数でしか設定できません。 環境変数はどのように設定しても構いませんが、開発中は“⁠Hubotを起動するためのシェルスクリプト⁠”を用意してそのシェルスクリプトの中に設定を書いておくと便利です。具体的には、次のようなシェルスクリプトを書くことになります。 run_hubot.sh #!/bin/sh export HUBOT_ADAPTER=hubot-irc export HUBOT_NAME=myhubot bin/hubot 以後、Adapterなどで使用する設定値は、シェルスクリプトを書いて環境変数を設定する方式で説明しますが、適宜自分にとって都合の良い方法に読み替えてください。 初期状態のエラーを解消する方法について 前回、H

    第3回 Hubotを色々なサービスと繋げてみる | gihyo.jp
    YAA
    YAA 2014/07/03
  • 第2回 インストールとHello World | gihyo.jp

    今回は、実際にhubotをインストールし、簡単なスクリプトを書いて動かしてみます。 インストール Hubotをインストールして動かすには、Node.js体とNode.jsのパッケージマネージャであるnpmが動く環境を用意する必要があります。節では、まずNode.jsとnpmをインストールしてからHubot自体をインストールする方法を解説します。 Node.jsとnpmのインストール Node.jsとnpmをインストールするには、UNIX系ならばパッケージマネージャ、Windowsならインストーラを使う方法が簡単です。 たとえば、CentOS 6では、パッケージマネージャであるyumにEPELリポジトリを追加することでNode.jsとnpmをインストールできるようになります。CentOS 6(64ビット版)でパッケージマネージャを使用したインストール方法の例を次に示します。 $ sudo

    第2回 インストールとHello World | gihyo.jp
    YAA
    YAA 2014/07/03
  • 第1回 Hubotとは何か | gihyo.jp

    連載では、GitHub社が開発したチャットbot開発・実行フレームワークである「Hubot」を使用して、チャットツールにオリジナルのbotを住まわせ、開発フローに組み込むことで開発を楽にする方法について解説していきます。 botとはなにか 開発の現場で、開発チーム内のコミュニケーションのためにIRCなどのチャットツールを導入することは、よく見る光景だと思います。そんなチャットツールに常駐してチャット経由でコマンドを待ち受けて実行したり、決められた条件に従ってチャットに発言してチャットの参加者に通知したりするようなプログラムのことをbotと呼びます。 Skype、HipChatやChatWorkなどコミュニケーションツールが多様化した現代においても、それぞれのチャットツールに対応したbotが開発されており、botを開発するためのフレームワークも様々な形で提供されています。botを導入するこ

    第1回 Hubotとは何か | gihyo.jp
    YAA
    YAA 2014/07/03
  • 第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
    YAA
    YAA 2014/06/23
    >実はcrontab <filename>とファイル指定することで,その内容をcrontabに反映できます
  • 第22回 Coroを使ったやさしいクローラの作り方(3) | gihyo.jp

    (1)はこちら、(⁠2)はこちらから。 並列・分散処理のためのクローラ ある程度大規模なクローラを作る場合は、一定時間内になるべく多くのURLから効率的にデータを収集する必要があります。接続先のホストごとに同時接続数やウェイトなどの配慮をしつつ、全体としては大量のリクエストを同時に処理する必要があります。検索エンジンのためのクローラ、定期的に同じURLにアクセスする必要がある更新チェックやフィードアグリゲータなどは、特に該当するでしょう。 Perlで高性能なクローラを書く場合の選択肢は2つあります。一つはforkによるマルチプロセスによるもので、Parallel::ForkManagerやParalell::Preforkを使うケースや、ジョブキューのためのフレームワークを使ったワーカがこれに該当します。もう一つはAnyEventやCoroを使ったI/O多重化によるアプローチです。筆者が好

    第22回 Coroを使ったやさしいクローラの作り方(3) | gihyo.jp