<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>7MC.ORG</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/" />
    <link rel="self" type="application/atom+xml" href="https://7mc.org/atom.xml" />
    <id>tag:7mc.org,2014-12-14://2</id>
    <updated>2026-03-01T04:09:55Z</updated>
    <subtitle>コンピューター、プログラミング、モバイル、ガジェットなどエレクトロニクス分野を中心にネタを提供するウェブサイトです。最近は中国ネタにも注力中。かつてはHWD15向けのAndroidアプリ「HWD15 Status Notifier」を作ってたりしていました。</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Pro</generator>

<entry>
    <title>[mineo]パケット放題 Plusが3Mbpsに増強されて逆に困った話</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2026/03/01/mineo_packet_free_plus_3mbps_komatta.html" />
    <id>tag:7mc.org,2026://2.393</id>

    <published>2026-03-01T04:09:29Z</published>
    <updated>2026-03-01T04:09:55Z</updated>

    <summary>mineoの「パケット放題 Plus」は月額385円を支払うことで最大1.5Mb...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="モバイル回線" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p><span>mineoの「<a href="https://mineo.jp/service/data/packet-free/">パケット放題 Plus</a>」は月額385円を支払うことで最大1.5Mbpsでのデータ通信が使い放題になるサービス。</span></p>
<p><span>ギリギリYoutubeを垂れ流せる程度の絶妙な通信速度ではあるものの、400円しない追加料金でデータ使い放題になるため長らく重宝している。</span></p>
<p><span>　</span></p>
<h3><span>[</span><span>朗報</span><span>]最大通信速度が3Mbpsに引き上げへ</span></h3>
<p><span>嬉しいことに、2025/12/10からトライアルとして最大通信速度が1.5Mbps→3Mbpsへ引き上げられた。</span></p>
<p><span>そして<a href="https://k-tai.watch.impress.co.jp/docs/news/2088635.html">2026/3/10に「パケット放題 3Mbps」と名称を変え正式リリースが決定</a></span><span>。</span></p>
<p>普通に考えれば「値段そのままで通信速度が速くなるんだからお得なんじゃじゃいの？」と思うところ。</p>
<p>それはそれで正しいのだが、反対に困ったことも出てきてしまった。</p>]]>
        <![CDATA[<h3><span>直近3日間で10GBという制限</span></h3>
<p><span></span>「データ通信が<span>使い放題になる」と書いたものの制限もある。</span></p>
<blockquote>
<p><span>ご注意事項<br />・mineoスイッチをONにした状態で直近3日間で10GB以上のご利用があった場合、スイッチON/OFFにかかわらず通信速度を最大200kbpsに制限する場合がございます。<br />・通信速度制限は超過日の翌日に実施し、超過日の翌々日の朝に解除いたします。</span></p>
<p><span><a href="https://mineo.jp/service/data/packet-free/">パケット放題サービス｜サービス・オプション｜格安スマホ・格安SIM【mineo(マイネオ)】</a><br /></span></p>
</blockquote>
<p><span><span style="text-decoration: underline;">直近3日間で10GB超の通信をした場合「翌日の通信速度が200kbpsに速度制限される」</span>のだ。</span></p>
<p><span>この<strong>懲罰</strong>が思ったより厳しい。</span></p>
<p><span>いわゆる「ギガ」を消費して通常通信をすることが許されず、丸一日200kbpsで過ごすことになる。</span></p>
<ul>
<li><a href="https://7mc.org/2022/08/19/mineo_packet_hodai_plus_wakari_nikui.html"><span>[mineo]パケット放題 Plusの通信制限が分かりにくすぎてキレそう - 7MC.ORG</span></a></li>
</ul>
<p><span>↑過去に一度だけ超えてしまい懲罰を受けた時の記事。</span></p>
<p><span>　</span></p>
<h3><span>懲罰を受けることはそうそう無かった</span></h3>
<p><span></span>最大速度が1.5Mbpsだった頃は上記の1度しか超えたことはなかった。</p>
<p>通勤時間中にYoutubeを垂れ流しにすることもよくあったが、しょせん1.5Mbpsでは大した通信量にならない。</p>
<p>それが2倍の3Mbpsになった途端これだ。</p>
<p><img alt="001.jpg" src="https://7mc.org/2026/03/01/001.jpg" width="400" height="215" class="mt-image-none" /></p>
<p>久々に見たこの文面。</p>
<p>以前は<a href="https://7mc.org/2022/08/19/mineo_packet_hodai_plus_wakari_nikui.html">バグでmineoメールアドレスにしか届いていなかった</a>が、今回はきちんと登録しているGmailアドレスにも届いた。</p>
<p><img alt="003.jpg" src="https://7mc.org/2026/03/01/003.jpg" width="400" height="173" class="mt-image-none" /></p>
<p><span>アプリから「mineoスイッチOFF」にしようとしても怒られてしまう。</span></p>
<p><span>この状態では実質データ通信が使用できないのと同じ。<strong>懲罰</strong>という言葉は全く間違っていない。</span></p>
<p>　</p>
<h3>履歴を見ると結構ギリギリだった</h3>
<p>そりゃ通信速度が最大2倍になっている訳だからデータ通信量も増えるわけだが、こんなにすぐ超えるとは。</p>
<p>これまでまぁまぁギリギリな使い方をしていたのだろう。</p>
<p><img alt="002.png" src="https://7mc.org/2026/03/01/002.png" width="400" height="481" class="mt-image-none" /></p>
<p>mineoアプリで通信量を確認してみたところ、確かに超えていた。</p>
<p>というか割と超えそうなタイミングが何度もあった。やっぱりこれまでがギリギリだったんだなぁ...。</p>
<p>Youtubeは回線速度によって画質を自動切換するので、通信速度が上がると画質も上がり自然と通信料が増えてしまうのだろう。</p>
<p>サブ回線のiijmioがあって本当に助かった。</p>
<p>　</p>
<h3>1Mbpsという選択肢もあるが...</h3>
<p>実は、有料サービスの<span>「<a href="https://mineo.jp/service/data/packet-free/">パケット放題 Plus</a>」に加え、無料で加入できる「<a href="https://optage.co.jp/press/2025/press_20.html">パケット放題 1Mbps</a>」も追加されている。</span></p>
<p><span>これがまた絶妙に「使えそうで使えない」通信速度。</span></p>
<p><span>1.5Mbpsの頃はややもたつくことがありながら我慢できていたが、1Mbpsになるとさすがに待てないレベルで通信に時間がかかり厳しい。</span></p>
<p><span>Youtubeも最低画質にすれば見れないことも無いが、他の通信が全てできなくなり常用は現実的ではない。</span></p>
<p><span>お金を出してもいいので1.5Mbpsにしてくれないかなぁ...。</span></p>
<p><span>　</span></p>
<h3><span>ということで</span></h3>
<p><span>最大1.5Mbpsの頃は常時パケット放題をONにしていても問題なかったのが、通信速度の向上に伴い「直近3日間で10GBを超えていないか」を確認する必要が出てきた。</span></p>
<p><span>一応超えそうになったら前日にメールは届くのだが、一日単位でしか教えてくれないので「時すでに遅し」の場合もある。</span></p>
<p><span>毎日目視で確認するのは骨が折れるので、</span><span>「超えそうになったら自動的にOFFにする」機能を付けてほしい所ではある。</span><span></span></p>
<p>というか通信速度を上げるなら上限も15GBとか20GBまであげてくれてもいいのに。</p>
<p>上限を変えないまま見かけ上の通信速度だけ上げて「サービス向上しました！」というのは、（言っていること自体は間違ってはいないのだが）受ける印象と乖離している部分があり、そういうのをユーザー側が気を付けないといけない所が良くも悪くもmineoだなぁと思った。</p>]]>
    </content>
</entry>

<entry>
    <title>BIGLOBEの光回線が頻繫に途切れていたのはIPv6オプションのせいではなかった</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2026/01/14/biglobe_ipv6_option_is_suck_pppoe_is_god.html" />
    <id>tag:7mc.org,2026://2.392</id>

    <published>2026-01-14T12:52:00Z</published>
    <updated>2026-03-01T05:52:52Z</updated>

    <summary>NTTの光回線を契約する際、プロバイダーにBIGLOBEを選んだのはIPV6オプ...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="ネットワーク" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p>NTTの光回線を契約する際、プロバイダーにBIGLOBEを選んだのは<a href="https://support.biglobe.ne.jp/ipv6/option.html">IPV6オプション</a>に対応していたから。</p>
<p>厳密には<strong>IPv4 over IPv6</strong>とか<strong>MAP-E</strong>とかいう名前らしいが、要するに従来の接続方式（PPPoE）で発生していた混雑を解消するために設けられた新しい接続方式。</p>
<p>この方式だと混雑が起きにくくネット速度が落ちにくいということでわざわざBIGLOBEを選んだのだが、結果としては満足のいく結果にはならなかった。</p>
<p>　</p>
<h3>不定期にインターネット接続が途切れる</h3>
<p>BIGLOBEと契約後、BuffaloのMAP-E対応ルーターを買ってインターネットライフが始まったわけだが、とにかく不定期にネットが切れる。</p>
<p>または接続速度が信じられないぐらい遅くなる。</p>
<p><img alt="003.jpg" src="https://7mc.org/2026/01/14/003.jpg" width="400" height="484" class="mt-image-none" /></p>
<p>症状が出ている時のSpeedtest。0.05Mbps出てるだけマシで「接続されていません」表示になり接続エラーになることの方が多い。</p>
<p>IPv6オプションでネットが頻繁に切断される問題はネット上にたくさん報告例がある。</p>
<ul>
<li><a href="https://qiita.com/yujiG/items/acb7d8d16a58df109e9a">【IPv6オプション】Buffaloのルーターを利用しててwi-fiが途切れる皆様へ #IPアドレス - Qiita</a></li>
<li><a href="https://tarosite.net/review/2024/10/19/nec-aterm-wx3600hp-solves-ipv4-network-issue/">ドコモ光・IPv4 over IPv6接続の頻繁な切断問題、Wi-FiルータをバッファローからNECに変えたら解決した</a></li>
<li><a href="https://penguinteitei.blog.fc2.com/blog-entry-51.html">ペンギンのメモ＆愚痴 blog BIGLOBE IPv6オプション　頻繁に回線落ちるんだけど・・・</a></li>
</ul>
<p></p>]]>
        <![CDATA[<h3>ルーターを変えても良くならなかった</h3>
<p>原因としてありがちなのが「バッファローが悪い」というもの（上の記事でもだいたいそういう結論になっている）。</p>
<p>ただ私の場合、ルーターをアイ・オー・データに変えても直らず、NECのAtermに変えても直らず。</p>
<p>過去に何度もこの問題を解消しようと調査・対策を打っていたのだがどうしようもなく、諦めて騙し騙し使っていた。</p>
<ul>
<li><a href="https://support.biglobe.ne.jp/speed/">光回線(BIGLOBE光・フレッツ光)の速度を最大限に引き出すには：BIGLOBE会員サポート</a></li>
<li><a href="https://support.biglobe.ne.jp/settei/setuzoku/ipv6/speed.html">IPv6接続 速度が出ない場合の確認ポイント：BIGLOBE会員サポート</a></li>
</ul>
<p>一応、BIGLOBE公式のヘルプページはある↑のだが、役に立った試しはない。</p>
<p>　</p>
<h3>ついに堪忍袋の緒が切れた</h3>
<p>ということでかなり長い間騙し騙し使っていたが、最近になって全く繋がらない時間が増えてきた。</p>
<p>流石に毎月6000円以上払っていてまともに接続できないのは勘弁してほしい...</p>
<p>一縷の望みにかけてルーターをTP-Link製に変えてみたのだがやはり変化なし。</p>
<p>ここまで来るとルーターが悪いという可能性はない。残るはプロバイダー自体かIPv6オプションが怪しいという結論に至ったのだが、BIGLOBEの<a href="https://support.biglobe.ne.jp/ipv6/option.html">IPV6オプション</a>は解約するのに窓口を通さないといけないらしい。</p>
<blockquote>
<p>解約手続き<br />IPv6オプションの解約は、メッセージサポートで承ります。以下の窓口までご連絡ください。<br /><a href="https://support.biglobe.ne.jp/ask/msg/operator.html?chat=ms_v6kai01" class="c-btn c-btn--detail">メッセージで解約</a></p>
</blockquote>
<p>ということで遂に重い腰を上げ、BIGLOBEに問い合わせすることにした。</p>
<p>チャットサポートを開き 「頻繁にインターネット接続が途切れたり速度が極端に遅くなる。IPv6オプションを解約してPPPoE接続に変えることを検討している。」とメッセージを送るも、「オペレータ回答時間 9:00～21:00」とのことで翌営業日まで待つことに。</p>
<p>　</p>
<h3>ようやくBIGLOBEサポートから回答が来た</h3>
<p>午前9時過ぎにサポートからの返事が返ってきた。</p>
<blockquote>
<p>フレッツ光接続に切断などの問題が発生している場合は、下記作業で改善する可能性があります。恐れ入りますが、お試しください。</p>
<p>・ケーブル類を抜き差しする<br />・ご利用機器の電源プラグを外し放電後、プラグを差し込む<br />・他のコンセントに機器の電源プラグを差し込む<br />・たこ足配線で接続している場合、他の機器を外して単独で電源を取る</p>
</blockquote>
<p>うんうん。</p>
<p>もちろん何度か試した上で問い合わせてるんだよ。</p>
<blockquote>
<p>上記作業をお試しいただいても状況が改善されない場合は、パソコン環境や回線上の問題など、様々な原因が考えられます。そのため、まずは回線側や機器などの詳細な状況についてご確認いただきたく存じます。</p>
<p>フレッツ光は、NTTの回線とBIGLOBEの接続サービスをそれぞれご契約いただくオプション型サービスです。<br />回線および回線終端装置などの機器はNTT提供のため、接続状況については恐れ入りますが提供元のNTTへ直接お問い合わせをお願いしています。</p>
<p>お手数をおかけしますが、回線および機器提供元であるNTTの下記窓口へ直接 お問い合わせいただき、回線状態や機器の設定、動作などをご確認ください。</p>
<p>◆NTT西日本 フレッツ 光ネクスト/フレッツ 光ライト/フレッツ・光プレミアム/Bフレッツ</p>
<p>・接続設定や故障、トラブルなどに関するお問い合わせ<br />　電話番号　　　：0120-248995<br />　受付時間　　　：24時間　365日（※）<br />　問い合わせURL ：https://flets-w.com/user/inquiry/</p>
<p>※故障修理などの対応は午前9時～午後5時、午後5時～翌朝午前9時は録音による受付です。</p>
</blockquote>
<p>まさかのNTTに丸投げ。ふざけるなよ。</p>
<p>プロバイダー料として毎月払っている1,100円にはサポート費用は入っていないというわけか。</p>
<p>そもそもこちらは「IPv6オプション解約を検討している」というメッセージを送っているのに、その件は完全無視でNTTに丸投げなのは流石にどうなのか。</p>
<p>　</p>
<h3>IPv6オプション解約しなくてもPPPoE接続できるやん</h3>
<p>一通り腹も立ち終わったところでふと気が付いた。</p>
<p>別にIPv6オプションを解約しなくても、ルーターの設定を変えればPPPoE接続できるじゃないか。</p>
<p><img alt="001.jpg" src="https://7mc.org/2026/01/14/001.jpg" width="730" height="297" class="mt-image-none" /></p>
<p>ということでルーター設定からサクッと接続方法をPPPoE設定に切り替えた。</p>
<ul>
<li><a href="https://support.biglobe.ne.jp/settei/setuzoku/ipv6/speed.html">IPv6接続 速度が出ない場合の確認ポイント：BIGLOBE会員サポート</a></li>
</ul>
<p>↑こちらのサイトを参考に速度を計測してみたが、夜の混雑する時間帯でもまあまあ許せる速度が出ている。</p>
<p><img alt="002.jpg" src="https://7mc.org/2026/01/14/002.jpg" width="688" height="313" class="mt-image-none" /></p>
<p>今まで何年間も苦しめられていたのは何だったのか・・・</p>
<p>こんなんだったら初めからPPPoE接続にしておけばよかったんじゃないか</p>
<p>　</p>
<h3>経過観察中</h3>
<p>喜ぶべきなのか悲しむべきなのか分からないが、とにかく長年の問題が解決できる可能性が出てきた。</p>
<p>PPPoE接続に変更してから丸一日が経過し、今のところネット接続が途切れたり遅くなる現象は起きていない。</p>
<p>もうしばらく使ってみて、問題が無さそうであれば追記したい。</p>
<p>　</p>
<h3>追記：事態はさらに悪化し、速度低下</h3>
<p>PPPoE接続に変更して接続が安定したように思われたが、一週間ほど経過観察した結果、速度が極端に遅くなっていることが判明した。</p>
<p><img alt="004.jpg" src="https://7mc.org/2026/01/14/004.jpg" width="400" height="387" class="mt-image-none" /></p>
<p><img alt="005.jpg" src="https://7mc.org/2026/01/14/005.jpg" width="400" height="405" class="mt-image-none" /></p>
<p>時間帯の違いはあるが平均1MB/sも出なくなってしまった。これは酷い。</p>
<p>PPPoE接続からIPv6オプションに戻してみてもほとんど変化はなかった。</p>
<p>どうしたものか・・・。</p>
<p>　</p>
<h3>初心に戻ってみる</h3>
<p>BIGLOBEに問い合わせた時にまず何を言われたか。</p>
<blockquote>
<p>・ケーブル類を抜き差しする</p>
</blockquote>
<p>そう、とりあえず全部のケーブルを抜き差ししてみる。</p>
<p>もちろん問い合わせる前にもやったが、もしかしたらそれで悪化したのかもしれない。</p>
<p><img alt="008.jpg" src="https://7mc.org/2026/01/14/008.jpg" width="400" height="300" class="mt-image-none" /></p>
<p>左：TP-Linkのルーター、右：ONU</p>
<p>この両者を繋いでいるLANケーブルを交換したり、挿しなおしたり。</p>
<p>ルーターとONUの電源も何度か入れなおしてみた。が、効果はなかった。</p>
<p><img alt="009.jpg" src="https://7mc.org/2026/01/14/009.jpg" width="400" height="300" class="mt-image-none" /></p>
<p>それから光コンセントとONUを繋いでいる↑SCケーブル↑を挿しなおしてみたり。</p>
<p>この「SCケーブル」は光ファイバーケーブルのため、あまり小さい径で巻くと通信ロスが大きくなる、ということも分かったので、直径7~8cmだったのを15cmぐらいに巻きなおした。</p>
<p>その結果がこれだ。</p>
<p><img alt="007.jpg" src="https://7mc.org/2026/01/14/007.jpg" width="400" height="383" class="mt-image-none" /></p>
<p><img alt="006.jpg" src="https://7mc.org/2026/01/14/006.jpg" width="400" height="381" class="mt-image-none" /></p>
<p><strong>嘘でしょ？そんなに速くなる？？</strong></p>
<p>おそらく元々SCケーブルの接続が微妙で不安定になっていたところに、雑な抜き差しをやったせいで更に悪化していたんだろう。</p>
<p>今回はSCケーブルを慎重に挿しなおし、しっかり嵌っていることを確認してからONU、ルーターの電源を入れなおした。</p>
<p>まさかこんな所に原因があるとは・・・。疑ってごめんよBIGLOBE。</p>
<p>　</p>
<h3>速度は戻ったように見えたが・・・</h3>
<p>ひとまず速度低下については解消したように見えたが、オチから言うと長期的にはあまり改善されなかった。</p>
<p>時間帯によっては結局遅くなったり、全く繋がらない状況が再発してしまった。</p>
<p></p>]]>
    </content>
</entry>

<entry>
    <title>Gmailの外部メールPOP受信機能（POP Checkmail）の代替案を探す</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2025/12/03/gmail_pop_checkmail_alternative.html" />
    <id>tag:7mc.org,2025://2.391</id>

    <published>2025-12-03T00:45:30Z</published>
    <updated>2025-12-30T09:19:10Z</updated>

    <summary>2025年10月に衝撃的なニュースが飛び込んできた。 Gmailの「外部メールP...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="コンピューター" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p>2025年10月に衝撃的なニュースが飛び込んできた。</p>
<p>Gmailの「外部メールPOP受信機能」（POP Checkmail）が2026年1月でサービス終了するらしい。</p>
<p><a href="https://support.google.com/mail/answer/16604719?hl=ja">Gmail の Gmailify と POP の今後の変更について</a></p>
<p>正直メールそのものよりも、この機能が目当てGmailを使っていたぐらい。</p>
<p>「多少のお金を払ってもよい」ぐらいの機能だったのでめちゃくちゃ残念・・・。</p>
<p>　</p>
<h3>めちゃくちゃ便利な機能</h3>
<p>この機能、「プロバイダーのメールやYahooメールなどの『Gmail以外のメール』をGmailに取り込むことができる」のだが、何が素晴らしいのかというと、取り込んだ全メールにGmailの強力なSPAMフィルターを適用できるのだ。</p>
<p>GmailのSPAMフィルターは大変優秀で、体感99%以上の迷惑メールを駆除してくれる優れもの。<br />プロバイダーのメールなんて「SPAMフィルター？何それ美味しいの？」状態で現状9割以上が迷惑メール。SPAMフィルターなしではまともに使えない有様。</p>
<p>そしてもう一つ素晴らしいのが「Gmailにすべてのメールを集約できる」点。Webでもスマホでも、Googleにログインするだけで全メールを読むことができる。</p>
<p>例えばPCを買い替えた際、移行作業として使用しているメーラーのメールや設定を移行しなければいけない（愛用しているThunderbirdは特定のフォルダを丸々コピーするだけでいいのでだいぶ楽だが）。</p>
<p>スマホについても、Googleの代替案「<a href="https://support.google.com/mail/answer/6078445?sjid=2066436572957947467-NC">Gmailアプリに他メールアカウントを追加する</a>」方法だと各端末に設定が必要で、機種変更のたびにメール設定の引っ越しが必要になる。面倒くさいことこの上ない。</p>
<p>Gmailの「外部メールPOP受信機能」で全メールを一つのGoogleアカウントに集約しておけば、スマホでGoogleログインするだけで全てのメールにアクセスできる。他には代えがたい機能だ。</p>
<p></p>]]>
        <![CDATA[<h3>せめて代替案がほしい</h3>
<p>期限まで数か月あったため、このニュースを見てから定期的にネットで代替案を検索しているのだが、以下のような無責任にGoogle Workspaceを勧める記事しか出てこない。</p>
<ul>
<li><a href="https://googleworkspace.tscloud.co.jp/gmail/gmail-pop">Gmail の POP サポート終了への対策ガイド。企業が検討すべきポイントを解説 - 株式会社TSクラウド</a></li>
<li><a href="https://www.value-domain.com/media/gmail-pop-end/">GmailのPOPサポート終了｜代替案やIMAPへの移行方法を解説｜バリューノート</a></li>
</ul>
<p>Google Workspaceを契約しても独自ドメインでGmail機能が使えるだけで、外部POP受信機能が復活するわけではない。</p>
<p>独自ドメインのメールをPOP受信している分はドメインをGoogle Workspace管理にすることで集約できるかもしれないが、プロバイダーのメールやYahooメール等までGmailに取り込めるようになるわけではないので注意。</p>
<p>　</p>
<h3>ようやく糸口を見つける</h3>
<p>「そろそろ残り1か月」ということで本腰を入れて調査することに。</p>
<p>「Gmail POP Checkmail Alternative」などの英語ワードで検索した結果、<a href="https://news.ycombinator.com/item?id=45461645">こちらの掲示板</a>で「Fastmail」と「Protonmail」というサービスが勧められているのを発見。</p>
<h4>【Protonmail】</h4>
<p>調べてみたところ、「Protonmail」は<a href="https://proton.me/support/automatic-forwarding-gmail">Forwarding（メール転送）機能</a>しかなさそう。</p>
<p>もともと「Gmailの外部メール受信機能の代わりとしてGmailに全メールを転送する」という代替案はあるのだが、Gmailに向けて雑にメール転送を繰り返すと迷惑メールとして扱われてしまい「転送したはずのメールが届かない」ということが起きるリスクがあるため、「メール転送」はあまり乗り気がしない。</p>
<p>もしかしたらProtonmailはそのあたりが柔軟に作られていて、Protonmail宛に転送する場合は問題ないのかもしれないが。</p>
<p><img alt="proton001.png" src="https://7mc.org/2025/12/03/proton001.png" width="269" height="387" class="mt-image-none" /></p>
<p>Protonmailには<a href="https://proton.me/ja/easyswitch">Easy Switch</a>という機能があり、1回限りのインポートであれば様々なメールサービスから取り込みができる。</p>
<p>ただ転送については、Gmailであればログインするだけで自動で設定してくれるが、Gmail以外のメール（特にプロバイダーのメールなど）については自分で転送設定をする必要があるようだ。</p>
<p>そのあたりが手間でなければ「Protonmailに全メールを転送する」という形を検討する価値はあるだろう。無料プランもあるし。</p>
<h4>【Fastmail】</h4>
<p>次に「Fastmail」についても調べてみたところ、こちらには<a href="https://www.reddit.com/r/fastmail/comments/1cvmi9w/fastmail_support_pop3imap_and_smtp_for_me_to/?tl=ja">fetch機能がある</a>とのこと。</p>
<p><a href="https://www.fastmail.help/hc/en-us/articles/1500000278022-Using-other-email-addresses-with-fetch">公式サイト</a>の説明を見た感じ、この機能は求めていた「外部メールの受信機能」のようだ。Gmailは1時間に1回しか自動取得してくれないが、Fastmailは設定次第では5分間隔で取得してくれるという書き込みもあった。</p>
<p>また、Gmailの外部メール受信とセットで活用していた「<a href="https://support.google.com/mail/answer/22370?hl=ja">別のアドレスやエイリアスからメールを送信する</a>」機能についても、Fastmailは<a href="https://www.fastmail.help/hc/en-us/articles/360060591073-How-to-set-up-aliases">エイリアス機能</a>として対応しているらしい。やるやん。</p>
<p>あとご丁寧にも<a href="https://www.fastmail.com/how-to/move-from-gmail/">Gmailから引っ越すためのインポートツール</a>もあるらしい。今Gmailに溜め込んでいるメールを根こそぎ移行し、今後はFastmailのfetch機能で外部メールを取り込めばメールを一か所に集約することができそうだ。</p>
<p>　</p>
<h3>Fastmailはほぼ理想通りの機能だが、有料サービスのみ</h3>
<p>ざっと見た感じ設定が難しそうだったり、サービスが英語のみだったり難点もあるが機能的にはほぼ理想通り。</p>
<p>ただしGoogleのサービス圏の一部として活用していたGmailと違って独立したメールサービスになってしまうため、カレンダーやGeminiとの連携ができなくなるのが大きなマイナス。</p>
<p>あと費用面の話。Fastmailは有料サービスで年間9,300円（一か月あたり775円）がかかる。</p>
<p>「多少のお金を払ってもよい」サービスではあるのだが、これまでが無料だったことを考えると正直ちょっと躊躇してしまう。</p>
<p>（もともと検討していたGoogle Workspace Starterが月800円なので同じぐらいではあるのだが・・・）</p>
<p>とはいえ他に同様の機能を持っているサービスは無さそうなので、ひとまずFastmailを試してみるかなぁ。</p>
<p>先に無料で試せるProtonmailへのメール転送を試してみるのもありか。</p>
<p>　</p>
<h3>【追記】第3の選択肢：Zoho Mail</h3>
<p>ネットニュースを見ていると以下のプレスリリースが目に入った。</p>
<ul>
<li><a href="https://prtimes.jp/main/html/rd/p/000000070.000101685.html">Gmail の外部メール受信（POP）終了を受け、Zoho Mail が企業向けメール移行を支援</a></li>
</ul>
<p>Zoho Mailも<a href="https://www.zoho.com/jp/mail/help/external-pop-accounts.html?src=external-pop-accounts-setup">外部メールのPOP受信に対応している</a>らしい。</p>
<p>これは試してみるしかない。</p>
<p>　</p>
<h3>料金はかなりお安め</h3>
<p><img alt="000.png" src="https://7mc.org/2025/12/03/000.png" width="666" height="292" class="mt-image-none" /></p>
<p><a href="https://www.zoho.com/jp/mail/zohomail-pricing.html">料金表を見る</a>と個人アカウントは5GBで月額120円、10GBで月額150円（どちらも年間払いのみ）。</p>
<p>プレミアムが50GBで月額480円で、独自ドメイン対応のWorkplaceアカウントでも30GBで月額360円。</p>
<p>安くても月額800円程度かかるGoogle WorkspaceやFastmailと比べるとかなり割安感がある。</p>
<p>　</p>
<h3>アカウント作成と外部POP受信設定</h3>
<p>とりあえず15日間の無料お試しを選んでみる。</p>
<p>アカウントを作成後、設定→<a href="https://mail.zoho.jp/zm/#settings/all/mailaccounts">メールアカウント</a>から「＋」ボタンを押すと外部アカウントを追加できる。</p>
<p>IMAPはプレミアム専用とのことでPOPを選択。</p>
<p><img alt="001.png" src="https://7mc.org/2025/12/03/001.png" width="548" height="366" class="mt-image-none" /></p>
<p>GmailやOutlookはアカウントへのアクセス許可をすることで登録できる。</p>
<p>それ以外の汎用POPメール場合は「その他」を選択し、メールのアドレスやサーバー名などを入力する。</p>
<p><img alt="002.png" src="https://7mc.org/2025/12/03/002.png" width="552" height="336" class="mt-image-none" /></p>
<p>試しにGmail、Outlook(Hotmail)、独自ドメインメール（外部POP）の3アカウントを追加してみた。</p>
<p><img alt="004.png" src="https://7mc.org/2025/12/03/004.png" width="556" height="420" class="mt-image-none" /></p>
<p>POPの受信頻度は3-20分の間で選択できる。</p>
<p>Gmailは最短1分だったので、3分はちょっと待たされる感がある。</p>
<p><img alt="003.png" src="https://7mc.org/2025/12/03/003.png" width="556" height="379" class="mt-image-none" /></p>
<p>追加した外部アカウントは、画面左下の▽アイコンをクリックして切り替える。</p>
<p>Gmailのように1つの受信トレイにすべてのメールが入るのではなく、外部アカウント毎に分かれており、アカウントを切り替えて使用するスタイルのようだ。</p>
<p><img alt="005.png" src="https://7mc.org/2025/12/03/005.png" width="597" height="317" class="mt-image-none" /></p>
<p>　</p>
<h3>Zoho Mailの所感</h3>
<p>アカウント登録後、かなり長い間（数日間）は過去メールの取り込みを待つ必要があった。</p>
<p>というのも、最短3分毎に最大200件ずつしか取り込まないため、過去10年以上のメールが溜まっているGmailの取り込みがなかなか終わらなかったのだ。</p>
<p>Gmailは連携するのを止めて今後のメールだけ転送するように設定した方がよさそうだ。</p>
<p>また、独自ドメインメールについては、Gmailの外部POP受信ではほぼ全て取り除けていた迷惑メールが、Zoho Mailでは受信トレイに一部入ってしまっていた。SPAMフィルターの性能はGmailには及ばないようだ。</p>
<p>価格設定については10GBで150円とかなりとっつき易く、また<a href="https://www.zoho.com/jp/mail/help/adminconsole/additional-storage.html?src=manage-subscription#add-on">追加容量の購入</a>もできるようなので長期利用でも安心(Liteユーザーでも追加可能かは未確認)。</p>
<p>追加容量も10GBが年額150円、25GBが年額375円、50GBが年額750円、100GBが年額1500円とリーズナブルなので、試しに加入してみるのもあり。</p>
<p>とりあえずトライアルの15日間使ってみて、どうするか判断する予定。</p>]]>
    </content>
</entry>

<entry>
    <title>Raspberry PiのSDカードを壊してしまったので復旧した</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2025/04/17/raspberry_pi_sd_card_recovery.html" />
    <id>tag:7mc.org,2025://2.390</id>

    <published>2025-04-17T03:44:12Z</published>
    <updated>2025-04-20T02:52:32Z</updated>

    <summary>ひょんなことから昔使っていたRaspberry Pi Zeroが出てきた。 20...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="Raspberry Pi" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p>ひょんなことから昔使っていたRaspberry Pi Zeroが出てきた。</p>
<p><img src="https://www.raspberrypi.org/app/uploads/2018/01/770A4994-500x332.jpg" /></p>
<p>2020年頃にMH-Z19というCO2センサーと組み合わせて二酸化炭素(CO2)濃度測定器として活用していたものだ。</p>
<p>かなり久しぶりに起動したので諸々アップデートしていたら、途中で誤って電源が落ちてしまった。</p>
<p>（最近の多ポートUSB電源は他の機器を挿すと瞬断するのを忘れていた・・・）</p>
<p>そしてラズパイは二度と立ち上がらなくなった・・・アップデート中に電源を落としたせいでSDカードのデータが破損してしまった様子。</p>
<p>ほんと余計な事をするもんじゃないな・・・</p>]]>
        <![CDATA[<h3>microSDカードの復旧を試みる</h3>
<p>何とかmicroSDカードを復旧、もしくは最低でもデータは救出したい。</p>
<p>homeディレクトリにMH-Z19を使うためのスクリプト類を全て置いていたので、それさえ確保できれば最悪OSは捨て置いてもいい。というかセキュリティー的にも最新OSに置き換えるいいチャンスだ（ポジティブシンキング）。</p>
<p>まず復旧方法を探したところ、以下のサイトが参考になった。</p>
<ul>
<li><a href="https://rcmdnk.com/blog/2020/01/10/computer-iot-raspberrypi/">Raspberry PiのSDカードからのサルベージ&amp;復旧</a></li>
</ul>
<p>簡単に言うと</p>
<ol>
<li>VMwareをインストールして仮想Linuxマシンを作成</li>
<li>仮想マシン内で破損したSDカードをマウントすることでデータを救出</li>
</ol>
<p>という手順だ。</p>
<p>最近になってVMware Workstation Proが無償化されたため、下記のサイトを参考にありがたく使わせてもらうことにする。</p>
<p><a href="https://blog.jbs.co.jp/entry/2025/02/26/130309">VMware Workstation Pro が無償化されたので試してみた (1) - JBS Tech Blog</a></p>
<p><a href="https://rcmdnk.com/blog/2020/01/10/computer-iot-raspberrypi/">復旧手順の参考サイト</a>ではUbuntuをインストールしているが、まぁ何でもいいだろうと<a href="https://www.raspberrypi.com/software/raspberry-pi-desktop/">Raspberry Pi Desktop OS</a>をインストールしてみた。</p>
<p>　</p>
<h3>仮想マシン上でSDカードリーダーが認識されない</h3>
<p>仮想マシンが出来上がったのでSDカードリーダーをUSB接続してみたが、仮想マシンのOS側で<code>/dev/sdb1</code>として認識されない。</p>
<p>色々試す中でUbuntuもインストールしてみたがやはり認識せず。<a href="https://rasumus.hatenablog.com/entry/2023/10/08/212519"></a></p>
<p>Google検索に助けを求めた結果、カードリーダーをUSB3.1ポートに接続していたことが原因だった模様。</p>
<p><img alt="001.png" src="https://7mc.org/2025/04/17/001.png" width="600" height="247" class="mt-image-none" /></p>
<blockquote>
<p>VMwareの「設定 -&gt; ハードウェア -&gt; USBコントローラ -&gt; USBの互換性」が"USB 2.0"となっていたのを"USB 3.1"を変更したら正常に動作した。</p>
<p><a href="https://rasumus.hatenablog.com/entry/2023/10/08/212519">VMware Workstation : USB接続HDDが認識されない時の対処 - rokkonet</a></p>
</blockquote>
<p>上記のとおりに設定変更したら無事認識された。</p>
<p>　</p>
<h3>必要なデータを取り出す</h3>
<p>後は復旧手順どおりにマウントすればOK。</p>
<pre><code>$ sudo mkdir -p /mnt/sdb1 &amp;&amp; sudo mount /dev/sdb1 /mnt/sdb1</code></pre>
<p>これでSDカードにアクセスでるようになった。</p>
<p><img alt="002.png" src="https://7mc.org/2025/04/17/002.png" width="600" height="369" class="mt-image-none" /></p>
<p><code>/mnt/sdb1/home/pi</code>の中身を丸ごとtgzに固め、VMwareの共有ディレクトリ機能を用いてホスト機（Windows）まで取り出せた。</p>
<p>これでファイルの救出は完了。</p>
<p>　</p>
<h3>SDカードの復旧はできなかった</h3>
<p><a href="https://rcmdnk.com/blog/2020/01/10/computer-iot-raspberrypi/">復旧手順の参考サイト</a>通りに<code>fsck</code>コマンドを叩くとsdb1のdirty bitを取り除くことはできた。</p>
<p><img alt="003.png" src="https://7mc.org/2025/04/17/003.png" width="600" height="497" class="mt-image-none" /></p>
<p>が、そのままmicroSDカードをラズパイに差し込んでも起動しなかった。</p>
<p>やはりSDカード自体を復旧するのは難しそうだ。残念だがこの結果は想定通り。</p>
<p>　</p>
<h3>OSを再インストール</h3>
<p>復旧は諦めて再構築の道を選択する。</p>
<p><a href="https://www.raspberrypi.com/software/">Raspberry Pi Imager</a>でラズパイZero用のOSを別のmicroSDカードにインストールする（念のため元のmicroSDカードは残しておく）</p>
<p><img alt="004.png" src="https://7mc.org/2025/04/17/004.png" width="600" height="424" class="mt-image-none" /></p>
<p>いつもの癖でDesktop版(GUI)のOSを選択してしまった・・・。</p>
<p>ラズパイZeroは性能が低いので余計な物が入っていないLite版(CUI専用)の方がいいのだが。</p>
<p>ImagerでWiFiとSSHの事前設定をしておけば、インストール後そのままPCからSSHログインして操作できるのでCUI専用でも困ることはないのだ。</p>
<p>OSがインストールできたらmicroSDをラズパイZeroに挿入して電源を入れ、PCからSSH接続する。</p>
<p><img alt="005.png" src="https://7mc.org/2025/04/17/005.png" width="600" height="314" class="mt-image-none" /></p>
<p>まずは<code>raspi-config</code>コマンドでGUIモードをオフ＆I2Cを有効化し、最後に<a href="https://knt60345blog.com/update/">一通りアップデート</a>する。</p>
<p>GUI版としてインストールしたのでパッケージが多くやたらと時間がかかった。</p>
<p>途中でLite版を入れ直そうかと迷ったが、ctrl+Cを押しても反応しなかったため諦めて最後まで待った。</p>
<p>　</p>
<h3>必要なライブラリをインストールし直す</h3>
<p>一通り更新できたら、<a href="https://pypi.org/project/mh-z19/">MH-Z19用のライブラリ</a>をインストール・・・</p>
<p>しようと <code>pip3 install</code> したのだが、<code>error: externally-managed-environment</code>エラーが出てインストールできない。</p>
<ul>
<li><a href="https://zenn.dev/eng_ryosan/articles/a635346a3123d3">Raspberry Pi OSでのerror: externally-managed-environmentの対処方法</a></li>
</ul>
<p>先達の知恵を借り、こちらの記事を参考に <code>--break-system-packages</code> オプションをつけて強行。</p>
<p>GPIO周りや液晶画面(ssd1306)用のパッケージ類も同様の方法でインストールし、ようやく以前のPythonスクリプトが動くようになった。</p>
<p>　</p>
<h3>自動起動用のサービス作成</h3>
<p>最後に、電源投入後に自動でPythonスクリプトが動きCO2濃度がディスプレイ表示されるよう設定を追加する。</p>
<p>Raspbianの頃にどうやって自動起動していたか覚えておらず、Raspberry Pi OS用のスタンダードな方法としてsystemdのサービスを作成することにした。</p>
<ul>
<li><a href="https://qiita.com/karaage0703/items/ed18f318a1775b28eab4#systemd-%E3%82%92%E4%BD%BF%E3%81%86%E6%96%B9%E6%B3%95">Raspberry Piでプログラムを自動起動する5種類の方法を比較・解説 #RaspberryPi - Qiita</a></li>
</ul>
<p>作業自体はそう難しくない。/etc/systemd/system/に新規.serviceファイルを作成し</p>
<pre>cd /etc/systemd/system/<br />sudo nano co2.service</pre>
<p>下記のように実行したいスクリプト名などを記述する。</p>
<pre>[Unit]<br />Description=CO2 Monitor<br />After=syslog.target<br /><br />[Service]<br />Type=simple<br />WorkingDirectory=/home/pi<br />ExecStart=python3 autorun.py<br />ExecStop=python3 onexit.py<br />StandardOutput=append:/home/pi/systemd_log.log<br /><br />[Install]<br />WantedBy = multi-user.target</pre>
<p>autorun.pyにはメインのCO2読取＆ディスプレイ表示機能を記述し、onexit.pyはディスプレイに「service end」と表示する機能を記述（サービスが終了したことが分かるように）。</p>
<p>co2.serviceファイルを保存したら下記コマンドでサービスを実行してみる。</p>
<pre>sudo systemctl start co2</pre>
<p>下記コマンドでエラーが出ていないことを確認したら、</p>
<pre>sudo systemctl status co2</pre>
<p>下記コマンドで自動起動を有効にする。</p>
<pre>sudo systemctl enable co2</pre>
<p>試しにラズパイZeroを再起動してしばらく待つと、何も操作しなくてもCO2濃度がディスプレイ表示された。</p>
<p>ExecStopに記述したonexit.pyもきちんと動いているようで、再起動時にディスプレイ表示が「service end」に変わった後、CO2濃度への表示に移った。</p>
<p>これで自動起動の設定は完了。以前の状態にすべて復旧できた。</p>
<p>　</p>
<h3>できればラズピコに移植したい</h3>
<p>当時はマイコンの知識がなかったためラズパイZeroで作ったが、CO2濃度計という単一機能のためだけにZeroを使うのはオーバースペックだし、いきなり電源断できないのも使い勝手が悪い。</p>
<p>以前買ったラズパイPicoがいくつか余っているので、できればPicoに移植したいのだが、ケースまでしっかり作った現行版をバラすのも忍びない。</p>
<p>じゃあMH-Z19をもう1個買うか、とも考えたがCO2濃度計センサーを2つもこしらえてどうするんだ感も否めない。</p>
<p>「ラズパイPico MH-Z19」でWeb検索すれば先達の記事がたくさん見つかるため、難易度はかなり低いしやってみたくはあるのだが・・・どうしたものかなぁ。</p>]]>
    </content>
</entry>

<entry>
    <title>自分でスマホのバッテリー交換するのは違法なのか（んなわけない）</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2025/04/10/changing_a_battery_of_smartphone_by_yourself_is_not_illegal_atarimae.html" />
    <id>tag:7mc.org,2025://2.389</id>

    <published>2025-04-10T04:24:54Z</published>
    <updated>2026-05-12T13:29:04Z</updated>

    <summary>Xiaomi 11T Proのバッテリー交換にあたり、 ネット上の情報を見ている...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="モバイル" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p><a href="https://7mc.org/2025/04/07/xiaomi_11t_pro_diy_battery_replacement.html">Xiaomi 11T Proのバッテリー交換</a>にあたり、 ネット上の情報を見ていると</p>
<p>「<strong>自力でスマホのバッテリーを交換するのは改造行為にあたり、違法である</strong>」という戯言（書き込み）を見た。</p>
<p><img alt="009.jpg" src="https://7mc.org/2025/04/07/009.jpg" width="600" height="424" class="mt-image-none" /></p>
<p>↑自分でスマホのバッテリー交換を行っている様子。これも違法行為になってしまうのであろうか。んなわけがない。</p>]]>
        <![CDATA[<p>おそらく下記のような言葉足らずの記事を見て「メーカー以外の修理は全てNG」と勘違いしたのだろう。</p>
<blockquote>
<p>製造元のメーカー以外がスマートフォンを一度でも分解したり改造したりすると、その時点で技適から外れてしまい（電波法38条の7第4項）、その後に無線機能を使うと電波法違反に問われる可能性がある。</p>
<p><a href="https://www.itmedia.co.jp/news/articles/1801/24/news079.html">街の"iPhone修理業者"は法令違反？　利用のコツは：明日から使えるITトリビア - ITmedia NEWS</a></p>
</blockquote>
<p>ネット上のこういった噂というのはたちが悪い。</p>
<p>どう考えてもそんな訳がないのだが、一応ちゃんと調べておかないといけないと思い、備忘録を残しておく。</p>
<p>　</p>
<h3>「登録修理業者制度」とは</h3>
<p>この噂の元になったのは平成27年に創設された「登録修理業者制度」である。</p>
<p>これは「スマホは技適取得が必要な『特別特定無線設備』なので、修理する際には適切な修理手法を用いていることが分かるようにしたいね」という考えの下で創設された制度だ。</p>
<p>厳密には「電波法に基づく登録修理業者制度」と「電気通信事業法に基づく登録修理業者制度」があるのだが、この記事ではスマホ修理に関係がある前者（電波法に基づく登録修理業者制度）について記述する。</p>
<p>　</p>
<h3>登録制度の対象者は修理業者のみ</h3>
<p>総務省Webサイトの<a href="https://www.tele.soumu.go.jp/j/sys/others/repairer/index.htm">「登録修理業者制度」ページ</a>を見ると、下記のように書かれている。</p>
<blockquote>
<p>登録修理業者制度による登録を受けた者（登録修理業者）として修理を行おうとされる方は、電波法及び電気通信事業法の２つの法律について、それぞれ登録の手続きを行うようにしてください。</p>
</blockquote>
<p>つまり「修理業者が『登録修理業者』としてスマホを修理をしたいなら登録してね」ということ。</p>
<p>当然、修理「業者」と書かれている以上、当制度に登録する主体は業者であり個人ではない。<span style="background-color: #c2e0f4;">個人は当制度の対象外</span>ということになる。</p>
<p>（個人事業主か法人か、みたいな話ではなく、業として修理を行っているという意味での「業者」という話なので、自分のスマホを自分で修理する場合はどう頑張っても対象にならない）</p>
<p>また同ページには下記のように書かれている。</p>
<blockquote>
<p>登録修理業者以外の者が特別特定無線設備に<strong>変更の工事</strong>を行った場合は、電波法第38条の７第４項に従い、技術基準適合証明、工事設計認証、技術基準適合自己確認に係る表示を除去しなければなりません。</p>
</blockquote>
<p>これは一見すると「登録修理業者以外」が修理をした場合は技適表記の除去（技適の取り直し）が必要であるように読んでしまいそうになるが、あくまでも「特別特定無線設備（＝スマホ）に変更の工事（＝性能が変わる改造）を行った場合」の話であり、ただバッテリーを交換するような修理行為は該当しない。</p>
<blockquote>
<p>「変更の工事」とは、製造事業者が、技術基準適合証明を受けるときに、無線機器の設計を提出して証明を受けますが、その設計の内容と違ったような改造を行う場合等をいいます。<br />なお、一般的な修理については、故障、破損、劣化等の箇所の本来の状態・機能に復帰させることであり、仕様の変更のような本来の状態・機能からの変更は含みません。</p>
<p><a href="https://www.soumu.go.jp/main_content/000429793.pdf">登録修理業者の申請手続きについて(電波法関連) </a></p>
</blockquote>
<p>↑を見てもわかるように、ただ一般的な修理をするだけであれば「本来の状態・機能に復帰させること」でしかなく、変更（改造）にはあたらないと明記されている。</p>
<p>つまり「<span style="background-color: #c2e0f4;">バッテリー交換程度の修理で技適が無効になることはない（＝違法にはならない）</span>」ということである。</p>
<p>　</p>
<h3>そもそも「守らないと違法」という類の制度ではない</h3>
<p>そもそも、当制度はあくまでも修理業者が「きちんと修理をしていることを表示するための登録制度」である。</p>
<p>つまり「登録しないと違法」とか「登録しないと罰則を受ける」という話ではない。認定を受けて「私たちは登録業者ですよ」と表示するイメージ。</p>
<blockquote>
<p>本制度は、登録に際し、修理の箇所及び修理の方法が適正であって修理後の無線設備が技術基準に適合していることを自らが確認できる等、電波法で定める登録の基準に適合する場合に、総務大臣の登録を受けることを<strong>可能とするものです</strong>。 </p>
<p>特別特定無線設備の修理を行おうとする修理業者は、電波法第 38 条の 39 の規定により総務省令(登録修理業者規則第 2 条)で定める手続きを行い、電波法第 38条の 40 第 1 項第 1 号及び第 2 号に定める基準に適合しているときは、登録修理業者として<span style="text-decoration: underline;">総務大臣の登録を<strong>受けることができます</strong></span>。 </p>
<p><a href="https://www.soumu.go.jp/main_content/000429793.pdf">登録修理業者の申請手続きについて(電波法関連) </a></p>
</blockquote>
<p>上記「<strong>登録を受けることができます</strong>」や「<strong>可能とするものです</strong>」ということは、あくまでも「登録を受けたい業者は受けられます」ということであり、裏を返せば「<span style="background-color: #c2e0f4;">登録を受けなくても別に構わない</span>」ということになる。</p>
<p>ただし、登録しない場合は、その業者が行う修理は法的には「登録修理業者制度に基づかない修理」となり、その場合は「登録修理業者が修理を行ったことを示す表示」ができなくなる。</p>
<p>それにより消費者からすれば「この業者は登録修理業者ではないんだな」とわかってしまい、不利なりますよ。というだけの話である。</p>
<blockquote>
<p>登録のない特別特定無線設備の修理は、登録修理業者制度に基づかない修理となります。</p>
<p>登録修理業者が修理した特別特定無線設備には、登録修理業者規則別表第 8 号に従い、登録修理業者が修理を行ったことを示す表示(表示する場所に制限はありません)を行う必要があります。(電波法第 38 条の 44 第 1 項) </p>
<p><a href="https://www.soumu.go.jp/main_content/000429793.pdf">登録修理業者の申請手続きについて(電波法関連) </a></p>
</blockquote>
<p>　</p>
<h3>結論</h3>
<p>当制度は言ってしまえば「ただの登録制度」であり、業者には登録の義務も罰則もない。</p>
<p>たとえ業者が登録なしに修理したとして何の問題もない（登録修理業者ではないのに登録修理業者を騙って修理するのはダメだが）。</p>
<p>ましてやそもそも当制度の対象外である個人が行う修理には何の関係もない。</p>
<p>ということで、「<strong>自分でスマホのバッテリーを交換することは何ら問題ない</strong>」のである。</p>
<p>当然、不正改造に該当する変更を行えば罰せられるわけだが、それは既存の電波法が定めるものであり、当制度によるものではないし業者であろうが個人であろうが関係はない。この違いは明確にしておかないといけない。</p>
<p><a href="https://dot.asahi.com/articles/-/23505?page=1">あなたのスマホ修理しただけで違法端末に！？ | AERA DIGITAL（アエラデジタル）</a></p>
<p>上記のような立場のあるメディアが「法律の解釈次第では」などという逃げの枕詞を付けた上で「スマホを修理しただけで違法」といった戯言を掲載し続けているせいで当制度への誤解が広まり、「個人がバッテリー交換するのは違法だ」などといった出鱈目が広まっているのは大変残念な話である。</p>
<p></p>
<p></p>]]>
    </content>
</entry>

<entry>
    <title>Xiaomi 11T Proのバッテリーを自分で交換した</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2025/04/07/xiaomi_11t_pro_diy_battery_replacement.html" />
    <id>tag:7mc.org,2025://2.387</id>

    <published>2025-04-07T14:54:02Z</published>
    <updated>2025-04-08T02:45:25Z</updated>

    <summary> Xiaomi 11T Proのバッテリー交換を検討した前回記事の続き。 当初は...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="Xiaomi" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p><img alt="001.jpg" src="https://7mc.org/2025/04/07/001.jpg" class="mt-image-none" /></p>
<p>Xiaomi 11T Proのバッテリー交換を検討した<a href="https://7mc.org/2025/03/28/xiaomi_11t_pro_battery_replacement_price.html">前回記事</a>の続き。</p>
<p>当初はメーカー修理or業者に依頼するつもりだったが、予備機として買ったmoto g24がそれなりに使えてしまったため先延ばしになった末、自分で交換することに。</p>
<p>「そんなに急いでバッテリー交換しなくてもいっか」と考えるうちに「自分で交換してもよさそうだな」と心変わりしてしまった。</p>]]>
        <![CDATA[<h3>交換手順をおさらいする</h3>
<p>自分で交換するにあたり、まず<a href="https://nukezo.sakura.ne.jp/2024/05/25/xiaomi11tpro_battery_exchange/">こちらのWeb記事</a>を参考にした。</p>
<p>全体の流れが簡潔に書かれており、大変参考になった。</p>
<p>またYoutube動画で具体的な作業内容を確認した。</p>
<p><iframe width="560" height="315" src="https://www.youtube.com/embed/qCTVZV3LZ8k?si=PHNTa7iWH7W4RHsO" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="allowfullscreen"></iframe></p>
<p>こちらの動画ではヘラや薄いカードのような道具で裏蓋を開けている。</p>
<p>注文したバッテリーにはギターピックのような道具しか付属していないようなので少し心配だが、<a href="https://nukezo.sakura.ne.jp/2024/05/25/xiaomi11tpro_battery_exchange/">Web記事</a>の方ではギターピックで開けているようなのでこれでも大丈夫だろう。</p>
<p><iframe width="560" height="315" src="https://www.youtube.com/embed/cMrja5e0hlA?si=7VYecl6QWZwnnoll" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="allowfullscreen"></iframe></p>
<p>こちらの動画は「裏蓋を剥がすのに使うヒートガンは180-190℃で2-3分間」など細かい数字まで教えてくれており参考になった。</p>
<p><iframe width="560" height="315" src="https://www.youtube.com/embed/vy8MIlFzJA4?si=OdFQxXx5LzUJ4q-G" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="allowfullscreen"></iframe></p>
<p>日本語の動画も見つかったので紹介しておく。</p>
<p>こちらの動画はバッテリー付属のギターピックで裏蓋を開けている。必見。</p>
<p>　</p>
<h3>ヒートガンを用意する</h3>
<p>そう、ヒートガンが要る。ドライヤーで代用できないか？と思ったが180-190℃も出ない。</p>
<p>Xiaomi 11T Proは裏蓋がガラス製なので力任せに剥がすとバキバキに割れるらしい。できれば万全の態勢で取り掛かりたい。</p>
<p>（参考：他機種だが<a href="https://plaza.rakuten.co.jp/garage43/diary/202501240000/">無水エタノールを流し入れて剥がす</a>という方法もあるらしい）</p>
<p>Amazonで適当な安ヒートガンを探してみると、300W/200℃までのものが1500円前後で手に入りそう。</p>
<div class="katteyo2">
<div class="katteyo2-child">
<div class="katteyo2-image"><a href="https://www.amazon.co.jp/gp/search?keywords=%E3%83%9F%E3%83%8B%20%E3%83%92%E3%83%BC%E3%83%88%E3%82%AC%E3%83%B3%20%E3%82%A8%E3%83%B3%E3%83%9C%E3%82%B9%E3%83%92%E3%83%BC%E3%82%BF%20%E5%B0%8F%E5%9E%8B%20300W&amp;__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&amp;tag=scexs-22"><img src="https://thumbnail.image.rakuten.co.jp/@0_mall/yy-glanz/cabinet/11391027/imgrc0099589636.jpg?_ex=128x128" style="border: none;" /></a></div>
<div class="katteyo2-text">
<div class="katteyo2-title"><a href="https://www.amazon.co.jp/gp/search?keywords=%E3%83%9F%E3%83%8B%20%E3%83%92%E3%83%BC%E3%83%88%E3%82%AC%E3%83%B3%20%E3%82%A8%E3%83%B3%E3%83%9C%E3%82%B9%E3%83%92%E3%83%BC%E3%82%BF%20%E5%B0%8F%E5%9E%8B%20300W&amp;__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&amp;tag=scexs-22">ミニ ヒートガン エンボスヒータ 小型 300W熱風機 ヒートガン ホットエアガン 熱風溶接機 手芸加工 修理 熱収縮紙装飾品 熱処理 急速加温 ねんどの乾燥 DIYツール</a></div>
<div class="katteyo2-description"><strong>【掲載時情報】</strong>
<ul>
<li><span>￥1,255</span> 税込</li>
<li><span>Amazon Prime配送</span></li>
</ul>
</div>
</div>
</div>
<div class="katteyo2-btns">
<div class="katteyo2-btns-child-black"><a target="_blank" href="https://www.amazon.co.jp/gp/search?keywords=%E3%83%9F%E3%83%8B%20%E3%83%92%E3%83%BC%E3%83%88%E3%82%AC%E3%83%B3%20%E3%82%A8%E3%83%B3%E3%83%9C%E3%82%B9%E3%83%92%E3%83%BC%E3%82%BF%20%E5%B0%8F%E5%9E%8B%20300W&amp;__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&amp;tag=scexs-22" rel="noopener">Amazonで確認</a></div>
<div class="katteyo2-btns-child-red"><a target="_blank" href="https://hb.afl.rakuten.co.jp/hgc/g00uj246.h4tn59c5.g00uj246.h4tn62fa/kaereba_main_202503281621522249?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Fyy-glanz%2Fhk-fr-hk80023%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Fyy-glanz%2Fi%2F10000102%2F&amp;rafcid=wsc_i_is_1087413314923222742" rel="noopener">楽天市場で確認</a></div>
</div>
</div>
<p>ただレビューを見るとノーブランドで壊れやすい上に、200℃ではハンダ付けなど他の用途に使えず微妙。</p>
<p>もう少し予算を上げて検索すると、<strong>KAIWEETS</strong>というテスターなどの電子工作機器で有名なブランドが見つかった。</p>
<p>一流ブランドではないが、中華メーカーの中ではなかなか信頼できるブランド。一応3年保証もある。</p>
<div class="katteyo2">
<div class="katteyo2-child">
<div class="katteyo2-image"><a href="https://www.amazon.co.jp/dp/B0CJHWQGYV/ref=nosim?tag=scexs-22&amp;th=1"><img src="https://thumbnail.image.rakuten.co.jp/@0_mall/hellodear/cabinet/raku010_0017/01-20240510-09014700.jpg?_ex=128x128" style="border: none;" /></a></div>
<div class="katteyo2-text">
<div class="katteyo2-title"><a href="https://www.amazon.co.jp/dp/B0CJHWQGYV/ref=nosim?tag=scexs-22&amp;th=1">KAIWEETS 450W エンボスヒーター 小型ヒートガン 250℃-450℃ 2段階調温可能 急速加温 フェンダー曲げ 収縮チューブ シュリンク包装 塗装の乾燥 塩ビの溶接 補修 熱処理用ハンディ熱風機 ノズル付属</a></div>
<div class="katteyo2-description"><strong>【掲載時情報】</strong>
<ul>
<li><span>￥2,116</span> 税込</li>
<li><span>Amazon Prime配送</span></li>
</ul>
</div>
</div>
</div>
<div class="katteyo2-btns">
<div class="katteyo2-btns-child-black"><a target="_blank" rel="noopener" href="https://www.amazon.co.jp/dp/B0CJHWQGYV/ref=nosim?tag=scexs-22&amp;th=1">Amazonで確認</a></div>
<div class="katteyo2-btns-child-red"><a target="_blank" rel="noopener" href="https://hb.afl.rakuten.co.jp/hgc/g00ulv16.h4tn5456.g00ulv16.h4tn6f99/kaereba_main_202503281621129047?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Fhellodear%2F01-20240510-090147%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Fhellodear%2Fi%2F10001436%2F&amp;rafcid=wsc_i_is_1087413314923222742">楽天市場で確認</a></div>
</div>
</div>
<p>ノーブランド品と違って250℃と450℃の2段階切り替えができハンダ付けにも使えそう。</p>
<p>250℃はちょっと高すぎるかな？と思ったが<a href="https://smahospital.jp/shop/machida/report/20167/">スマホ修理業者も250℃で使っている</a>らしく、むしろちょうどいい。</p>
<p>（<a href="https://postrepair.net/repair-results/aquos_sense4_battery/">こちらの業者</a>も。というかポストリペアとスマホスピタル町田って中の人同じっぽいな。電話番号も連番だし）</p>
<p>運よくセールで2,100円ちょっとだったので即購入。</p>
<p>これで準備万端だ。</p>
<p>　</p>
<h3>バッテリーが届く</h3>
<p>交換用バッテリーはアリエクで購入した。</p>
<p><img alt="001.jpg" src="https://7mc.org/2025/04/07/001.jpg" width="600" height="450" class="mt-image-none" /></p>
<p>Xiaomi 11T Pro用のバッテリーは「<span style="background-color: #c2e0f4;">BM58</span>」という型番。Xiaomi 11Tは「<span style="background-color: #f8cac6;">BM59</span>」なので注意。</p>
<p>値段はアリエクで2500円程度。<a href="https://www.amazon.co.jp/s?k=xiaomi+11t+pro+%E3%83%90%E3%83%83%E3%83%86%E3%83%AA%E3%83%BC+bm58&amp;tag=scexs-22">Amazon</a>だと3000～5000円程度で売っている。</p>
<p><img alt="002.jpg" src="https://7mc.org/2025/04/07/002.jpg" width="600" height="450" class="mt-image-none" /></p>
<p>付属品として裏蓋を外すためのツール類とバッテリー接着用のシールが同梱している。</p>
<p>これでようやく役者が揃った。</p>
<p>　</p>
<h3>いざバッテリー交換</h3>
<p>細かい交換手順についてはすでに紹介しているため割愛するが、とにかくこの隙間にピックを入れるまでが一番苦労した。</p>
<p><img alt="003.jpg" src="https://7mc.org/2025/04/07/003.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>250℃のヒートガンでスマホの外周を2分ほど温め、吸盤で引っ張りながらピックをねじ込もうとするがびくともしない。</p>
<p>結局4、5回は追い加熱し、吸盤が千切れそうなぐらい引っ張りながらL時の爪（上写真の左端に写っている器具）の先をようやくねじ込むことができた。</p>
<p><img alt="004.jpg" src="https://7mc.org/2025/04/07/004.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>ねじ込みが成功したらピックを差し込み、またヒートガンで温めながらじわじわとピックをスライドさせていく。</p>
<p><img alt="005.jpg" src="https://7mc.org/2025/04/07/005.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>薄いピックがこれぐらい差し込めたら粘着部分を切り離すことに成功している。</p>
<p><img alt="006.jpg" src="https://7mc.org/2025/04/07/006.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>このタイプのピックは厚みがあるためかあまり役立たなかった。一方の隙間を開いたままキープするのにはギリギリ使える程度。</p>
<p><img alt="007.jpg" src="https://7mc.org/2025/04/07/007.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>角の部分は特に固いので、↑のような角度から・・・</p>
<p><img alt="008.jpg" src="https://7mc.org/2025/04/07/008.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>↑くるっとピックを回すような動きをすると剥がしやすい。</p>
<p><img alt="009.jpg" src="https://7mc.org/2025/04/07/009.jpg" width="600" height="424" class="mt-image-none" /></p>
<p>一周しっかり剥がすことができていれば軽い力で裏蓋が外れるはずだ。</p>
<p>一点注意が必要なのが電源ボタン周り。</p>
<p><img alt="010.jpg" src="https://7mc.org/2025/04/07/010.jpg" width="452" height="600" class="mt-image-none" /></p>
<p>↑赤枠で囲った部分には電源ボタンと音量ボタンのフレキケーブルが通っている。</p>
<p>フレキケーブルが切れたら非常に厄介なのでここにはピックを通さない方がよい（ここには粘着テープは貼られていない）。</p>
<p><img alt="011.jpg" src="https://7mc.org/2025/04/07/011.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>↑次に9本のネジを外す。真ん中のMiロゴシールは綺麗に剥がせない（すぐボロボロになる）素材なので残すのは諦めた。</p>
<p>ネジが外れたらパネルを外し、3つのコネクタ（メイン端子1個とバッテリー端子2個）を外す。</p>
<p>コネクタの上に貼ってある銅のシール（おそらくヒートスプレッダに繋がっている）はそのまま千切った。</p>
<p>Xiaomi 11Tにはこのシールは無いらしく、120W充電時に端子が発熱することの対策として貼られていると思われる。</p>
<p>今後はバッテリー保護のため120W充電は封印するつもりなので、端子部の発熱は気にしなくて大丈夫だろう。</p>
<p><img alt="013.jpg" src="https://7mc.org/2025/04/07/012.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>↑Youtube動画でも皆が苦労していたバッテリーの取り外しについては、マルAのテープを引っ張りながらマイナスドライバーを突っ込んでテコの原理で持ち上げたら割と簡単に持ち上がった。</p>
<p>金属のドライバーをリチウムポリマー電池に突き立てるのには抵抗があるかもしれないが・・・</p>
<p>これが仮に1枚板のバッテリーだと曲がって（折れて）しまわないか心配になるが、このバッテリーは真ん中で二分割されているので、テコの原理で持ち上げると半分だけ持ち上がって剝がれてくれる。</p>
<p><img alt="013.jpg" src="https://7mc.org/2025/04/07/013.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>↑手前半分（赤枠部分）が持ち上がったら、持ち上がった電池を掴んで剥がしていくことでもう半分も剥がせる。よくできた作りだ。</p>
<p><img alt="014.jpg" src="https://7mc.org/2025/04/07/014.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>↑剥がした後。手前側はマルAのテープを引っ張ったため千切れてしまったが、奥側はマルAのテープには触らず電池自体を掴んで剥がしたため、黄色いテープを綺麗に残すことができた。</p>
<p><img alt="015.jpg" src="https://7mc.org/2025/04/07/015.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>左が古い電池。右が新しい電池。</p>
<p>黄色いテープは新しい方に移植した（が、見た目が汚くなってしまったのでいらなかったかも）。</p>
<p><img alt="016.jpg" src="https://7mc.org/2025/04/07/016.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>交換用バッテリーに付属してきた2枚の白い両面テープはそのまま貼ると間隔が狭すぎたため、片側ずつマスキングしながらバッテリー裏面に貼り付けた。</p>
<p><img alt="017.jpg" src="https://7mc.org/2025/04/07/017.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>この両面テープ、ちょっとでも別のところにくっ付くと伸びてしまう。が粘着はしてくれるので気にしない。</p>
<p>裏面に両面テープが貼れたらバッテリーを装着する。</p>
<p><img alt="019.jpg" src="https://7mc.org/2025/04/07/019.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>勢い余ってバッテリーがちょっと斜めに付いてしまった。端子の位置が微妙に合わない・・・でも大丈夫。</p>
<p><img alt="020.jpg" src="https://7mc.org/2025/04/07/020.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>バッテリーのフレキの折り畳んである部分を一度伸ばし、長さを調節して折り畳み直せば端子の位置を調整できる。</p>
<p>なお、スマホを落とした衝撃等でこのフレキケーブルの端子が外れると厄介（バッテリー残量表示が常に15%になるらしい）なので、なるべく引っ張る力が働かないよう折り畳み部分にはしっかり折り目をつけておこう。</p>
<p>白字で「BM58」と書かれた辺りを指でグッと押した後、フレキが浮き上がってこなくなればOK。</p>
<p><img alt="021.jpg" src="https://7mc.org/2025/04/07/021.jpg" width="600" height="570" class="mt-image-none" /></p>
<p>バッテリー端子（Sが先、Mが後）とメイン端子を繋いだら、いったんこの状態で電源を入れてみる。</p>
<p><img alt="022.jpg" src="https://7mc.org/2025/04/07/022.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>問題なく電源が入り、電池残量も異常がなかったのでバッテリー交換はOKと判断した。</p>
<p>電源を切り、組み戻し作業を行う。</p>
<p><img alt="023.jpg" src="https://7mc.org/2025/04/07/023.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>パネルを元の位置に戻すが、ここで作業ミスが発覚。</p>
<p>本来は赤で囲ったパーツを外さないといけないのに、パネル裏側のコネクタ（赤矢印）を外してしまっていた。戻すのが大変だ。</p>
<p><img alt="024.jpg" src="https://7mc.org/2025/04/07/024.jpg" width="600" height="457" class="mt-image-none" /></p>
<p>パネルを裏向けてみると端子があるのが分かる。この端子はパネルをはめると見えなくなる位置にある上にフレキの遊びが少ないため、取り付けるのには苦労した。</p>
<p>パネルを元の場所にセットしてから、隙間にマイナスドライバーを入れてフレキを押し込むことで何とか端子をはめ込んだ。</p>
<p>この状態で再度電源を入れ、「懐中電灯」機能でLEDライトが点灯するのを確認した。</p>
<p><img alt="025.jpg" src="https://7mc.org/2025/04/07/025.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>一通り動作確認がOKだったので、最後に裏蓋を元に戻す。</p>
<p>接着シールはまぁまぁボロボロになっているが今回はそのまま使い回すことに。</p>
<p>気になる人は後述する接着シールを買って貼り直すとよい。</p>
<p><img alt="026.jpg" src="https://7mc.org/2025/04/07/026.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>裏蓋を元に状態に戻したら手で圧をかけて接着する。指でギュッとつまむのを何周か繰り返したら、輪ゴムでとめて一晩ほど寝かせる。</p>
<p>（本当は参考動画に出てきたようなクリップで挟んだ方がいいんだろうけど）</p>
<p>これで多分剥がれることはないと思うが、出先でいきなりパックリされると困るのでTPUケースはつけて使用することにする。</p>
<p>これで交換作業は完了だ。作業所要時間は40分ほどだった。</p>
<p>　</p>
<h3>裏蓋と接着シール</h3>
<p>もし裏蓋（バックパネル）が割れてしまった場合は代替品を購入する必要がある。Amazonで1500円前後で買える。</p>
<p>また、裏蓋開封時に接着シールがボロボロになってしまった場合は別途購入して貼り直さないといけない。</p>
<p>ただAmazonでは接着シール単体は売っていないので、下記裏蓋とセットで買うか、アリエクなど別のサイトから接着シールを買うことになる。</p>
<p>この際なので違う色に変えてイメチェンしてみてもいいかもしれない。</p>
<div class="katteyo2">
<div class="katteyo2-child">
<div class="katteyo2-image"><a href="https://www.amazon.co.jp/dp/B0BMZVCWXR/ref=nosim?tag=scexs-22&amp;th=1"><img src="https://m.media-amazon.com/images/I/61Z7S-zA1rL._AC_SY450_.jpg" height="150/" /></a></div>
<div class="katteyo2-text">
<div class="katteyo2-title"><a href="https://www.amazon.co.jp/dp/B0BMZVCWXR/ref=nosim?tag=scexs-22&amp;th=1">Yunchao 携帯電話の交換部品 Xiaomi 11t/11t Proのガラスバッテリーバックカバー 電話アクセサリー</a></div>
<div class="katteyo2-description"><strong>【掲載時情報】</strong>
<ul>
<li>￥1,466 税込</li>
<li><span>通常4～5日以内に発送</span></li>
</ul>
</div>
</div>
</div>
<div class="katteyo2-btns">
<div class="katteyo2-btns-child-black"><a target="_blank" rel="noopener" href="https://www.amazon.co.jp/dp/B0BMZVCWXR/ref=nosim?tag=scexs-22&amp;th=1">Amazonで確認</a></div>
<div class="katteyo2-btns-child-red"><a target="_blank" href="https://hb.afl.rakuten.co.jp/hgc/1756f811.d8f34d4e.1756f812.c14dde71/kaereba_main_202504041809339654?pc=https%3A%2F%2Fsearch.rakuten.co.jp%2Fsearch%2Fmall%2FXiaomi%252011t%2520pro%2520%25E4%25BF%25AE%25E7%2590%2586%2F-%2Ff.1-p.1-s.1-sf.0-st.A-v.2%3Fx%3D0%26scid%3Daf_ich_link_urltxt&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2F" rel="noopener">楽天市場で確認</a></div>
</div>
</div>
<div class="katteyo2">
<div class="katteyo2-child">
<div class="katteyo2-image"><a href="https://www.amazon.co.jp/dp/B0BVKCL9VZ/ref=nosim?tag=scexs-22&amp;th=1"><img src="https://m.media-amazon.com/images/I/41nWxQ1ALpL._AC_UL320_.jpg" width="160/" /></a></div>
<div class="katteyo2-text">
<div class="katteyo2-title"><a href="https://www.amazon.co.jp/dp/B0BVKCL9VZ/ref=nosim?tag=scexs-22&amp;th=1">Xiaomi 11T Pro バックパネル 背面ガラス リアパネル バックプレート ヒビ割れ 修理部品 交換用パーツ シャオミ 11Tプロ 21081111RG 2107113SR 101293 (セレスティアルブルー)</a></div>
<div class="katteyo2-description"><strong>【掲載時情報】</strong>
<ul>
<li>￥3,740税込</li>
<li><span>無料発送</span></li>
</ul>
</div>
</div>
</div>
<div class="katteyo2-btns">
<div class="katteyo2-btns-child-black"><a target="_blank" rel="noopener" href="https://www.amazon.co.jp/dp/B0BVKCL9VZ/ref=nosim?tag=scexs-22&amp;th=1">Amazonで確認</a></div>
<div class="katteyo2-btns-child-red"><a target="_blank" href="https://hb.afl.rakuten.co.jp/hgc/g00skk06.h4tn58e1.g00skk06.h4tn63a2/kaereba_main_202504041809339654?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Falzey%2F101293%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Falzey%2Fi%2F10002155%2F&amp;rafcid=wsc_i_is_1087413314923222742" rel="noopener">楽天市場で確認</a></div>
</div>
</div>
<p>　</p>
<h3>交換後のバッテリーの様子は・・・</h3>
<p>交換後しばらく使ってみてバッテリー情報を確認すると、明らかに電池の減りが改善された。</p>
<p><img alt="027.jpg" src="https://7mc.org/2025/04/07/027.jpg" width="600" height="587" class="mt-image-none" /></p>
<p>電池交換（赤矢印）より前はバッテリー残量が急降下していたのが、交換後は緩やかになっていることが分かる。</p>
<p>しばらくは電池がゼロになるまで放置→低速充電を繰り返すことで電池を慣らしてみて、どれぐらい改善されたか確認してみたい。</p>]]>
    </content>
</entry>

<entry>
    <title>車のキーが根本から折れたので補修キットで対処した</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2025/03/31/repairing_key_of_car_part2.html" />
    <id>tag:7mc.org,2025://2.385</id>

    <published>2025-03-31T13:26:20Z</published>
    <updated>2025-04-08T01:58:39Z</updated>

    <summary>2年半ほど前、車のキーが折れたことを記事にした。 車のキーが根本から折れたので無...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="車関係" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p>2年半ほど前、車のキーが折れたことを記事にした。</p>
<p><a href="https://7mc.org/2022/11/14/repairing_key_of_car.html">車のキーが根本から折れたので無理やり修理した - 7MC.ORG</a></p>
<p>初年度登録から20年以上も経った車のキーだ。当然プラスチックは劣化しているし、エンジンをかける度に捻られる力が加わっているのだから仕方がない。</p>
<p>当時は過去に買っていたブランクキーに無理やり移植して対応したのだが・・・</p>
<p>この度、もう一本（予備）のキーも折れてしまった。</p>
<p><img alt="000.jpg" src="https://7mc.org/2025/03/31/000.jpg" width="600" height="394" class="mt-image-none" /></p>
<p>そりゃそうだよな。さすがに寿命だよ。</p>]]>
        <![CDATA[<h3>性懲りもなくブランクキーを注文</h3>
<p>人間なかなか学習しないもので、前回同様に<span>アリエクでブランクキーを購ってしまった。</span></p>
<p><span>前回とほぼ同じ150円で売ってたのをみつけてしまい、つい・・・。</span></p>
<p><img alt="006.jpg" src="https://7mc.org/2025/03/31/006.jpg" width="681" height="196" class="mt-image-none" /></p>
<p><span>ただ前回と違ってトヨタロゴ付きのものは見つけられなかった。流石に</span><span>時代が変わったということか。</span></p>
<p><span>　</span></p>
<h3>そしてゴミが届く</h3>
<p>10日ほどでヤマト運輸が届けてくれた。150円（送料無料）の商品が宅急便で届くとは驚き。</p>
<p>1か月かけて国際小包が届くのを待っていたのが遠い昔のようだ。</p>
<p>で、封を開けるとこれだ。</p>
<p><img alt="002.jpg" src="https://7mc.org/2025/03/31/002.jpg" width="600" height="452" class="mt-image-none" /></p>
<p><b>なにこれ</b>。</p>
<p>　</p>
<h3>アリエクあるある</h3>
<p>アリエクで相場より安いものを注文すると、（わざと？）間違った商品が届き返品もできず泣き寝入り、ということはよくある。</p>
<p>今回届いたゴミはスマホ用の指サックのようだ。適当な在庫処分品を送り付けて購入者が諦めるのを狙っているのだろう。</p>
<p><img alt="001.jpg" src="https://7mc.org/2025/03/31/001.jpg" width="581" height="772" class="mt-image-none" /></p>
<p>↑さっそく返品申請をするが「返金なし」というふざけた回答。問答無用で却下するが、その後の返事がない。</p>
<p>もう面倒くさい。ここで諦めたら奴らの思うつぼなんだが・・・。</p>
<p>　</p>
<h3>返金を待つうちに補修キットを見つける</h3>
<p>150円のために時間をかけるのはアホらしいので、国内で探すことに（初めからそうしなさい）。</p>
<p>Amazonや楽天市場で同様のブランクキーは700円程度なので、これを買って<a href="https://7mc.org/2022/11/14/repairing_key_of_car.html">前回同様に</a>無理やり移植をするかな、と思っていたら・・・</p>
<p>今回の用途ドンピシャの「キー補修キット」というものを見つけた。</p>
<div class="kaerebalink-box" style="text-align: left; padding-bottom: 20px; font-size: small; zoom: 1; overflow: hidden;">
<div class="kaerebalink-image" style="float: left; margin: 0 15px 10px 0;"><a href="https://hb.afl.rakuten.co.jp/hgc/g00rts36.h4tn53bc.g00rts36.h4tn6224/kaereba_main_202503251650374594?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Fauc-yu-i-partu%2Fkeyc10a%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Fauc-yu-i-partu%2Fi%2F10001474%2F&amp;rafcid=wsc_i_is_1087413314923222742" target="_blank" rel="noopener"><img src="https://thumbnail.image.rakuten.co.jp/@0_mall/auc-yu-i-partu/cabinet/03503394/8ii.jpg?_ex=128x128" style="border: none;" /></a></div>
<div class="kaerebalink-info" style="line-height: 120%; zoom: 1; overflow: hidden;">
<div class="kaerebalink-name" style="margin-bottom: 10px; line-height: 120%;"><a href="https://hb.afl.rakuten.co.jp/hgc/g00rts36.h4tn53bc.g00rts36.h4tn6224/kaereba_main_202503251650374594?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Fauc-yu-i-partu%2Fkeyc10a%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Fauc-yu-i-partu%2Fi%2F10001474%2F&amp;rafcid=wsc_i_is_1087413314923222742" target="_blank" rel="noopener">■トヨタ キー補修キット サイド1ボタン ブランクキー交換 キーレスキー エスティマ ノア ヴォクシー シエンタ　イプサム クラウン プリウス ウイッシュ カローラ ハイエース イスト ウイッシュ ラウム クルーガー</a>
<div class="kaerebalink-powered-date" style="font-size: 8pt; margin-top: 5px; font-family: verdana; line-height: 120%;">posted with <a href="https://kaereba.com" rel="nofollow noopener" target="_blank">カエレバ</a></div>
</div>
<div class="kaerebalink-detail" style="margin-bottom: 5px;"></div>
<div class="kaerebalink-link1" style="margin-top: 10px;">
<div class="shoplinkrakuten" style="display: inline; margin-right: 5px; background: url('//img.yomereba.com/kl.gif') 0 -50px no-repeat; padding: 2px 0 2px 18px; white-space: nowrap;"><a href="https://hb.afl.rakuten.co.jp/hgc/1756f811.d8f34d4e.1756f812.c14dde71/kaereba_main_202503251650374594?pc=https%3A%2F%2Fsearch.rakuten.co.jp%2Fsearch%2Fmall%2F%25E2%2596%25A0%25E3%2583%2588%25E3%2583%25A8%25E3%2582%25BF%2520%25E3%2582%25AD%25E3%2583%25BC%25E8%25A3%259C%25E4%25BF%25AE%25E3%2582%25AD%25E3%2583%2583%25E3%2583%2588%2520%25E3%2582%25B5%25E3%2582%25A4%25E3%2583%25891%25E3%2583%259C%25E3%2582%25BF%25E3%2583%25B3%2520%25E3%2583%2596%25E3%2583%25A9%25E3%2583%25B3%25E3%2582%25AF%25E3%2582%25AD%25E3%2583%25BC%25E4%25BA%25A4%25E6%258F%259B%2520%25E3%2582%25AD%25E3%2583%25BC%25E3%2583%25AC%25E3%2582%25B9%25E3%2582%25AD%25E3%2583%25BC%2520%25E3%2582%25A8%25E3%2582%25B9%25E3%2583%2586%25E3%2582%25A3%25E3%2583%259E%2520%25E3%2583%258E%25E3%2582%25A2%2520%25E3%2583%25B4%25E3%2582%25A9%25E3%2582%25AF%25E3%2582%25B7%25E3%2583%25BC%2520%25E3%2582%25B7%25E3%2582%25A8%25E3%2583%25B3%25E3%2582%25BF%25E3%2580%2580%25E3%2582%25A4%25E3%2583%2597%25E3%2582%25B5%25E3%2583%25A0%2520%25E3%2582%25AF%25E3%2583%25A9%25E3%2582%25A6%25E3%2583%25B3%2520%25E3%2583%2597%25E3%2583%25AA%25E3%2582%25A6%25E3%2582%25B9%2520%25E3%2582%25A6%25E3%2582%25A4%25E3%2583%2583%25E3%2582%25B7%25E3%2583%25A5%2520%25E3%2582%25AB%25E3%2583%25AD%25E3%2583%25BC%25E3%2583%25A9%2520%25E3%2583%258F%25E3%2582%25A4%25E3%2582%25A8%25E3%2583%25BC%25E3%2582%25B9%2520%25E3%2582%25A4%25E3%2582%25B9%25E3%2583%2588%2520%25E3%2582%25A6%25E3%2582%25A4%25E3%2583%2583%25E3%2582%25B7%25E3%2583%25A5%2520%25E3%2583%25A9%25E3%2582%25A6%25E3%2583%25A0%2520%25E3%2582%25AF%25E3%2583%25AB%25E3%2583%25BC%25E3%2582%25AC%25E3%2583%25BC%2F-%2Ff.1-p.1-s.1-sf.0-st.A-v.2%3Fx%3D0%26scid%3Daf_ich_link_urltxt&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2F" target="_blank" rel="noopener">楽天市場で購入</a></div>
<div class="shoplinkamazon" style="display: inline; margin-right: 5px; background: url('//img.yomereba.com/kl.gif') 0 0 no-repeat; padding: 2px 0 2px 18px; white-space: nowrap;"><a href="https://www.amazon.co.jp/gp/search?keywords=%E2%96%A0%E3%83%88%E3%83%A8%E3%82%BF%20%E3%82%AD%E3%83%BC%E8%A3%9C%E4%BF%AE%E3%82%AD%E3%83%83%E3%83%88%20%E3%82%B5%E3%82%A4%E3%83%891%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%96%E3%83%A9%E3%83%B3%E3%82%AF%E3%82%AD%E3%83%BC%E4%BA%A4%E6%8F%9B%20%E3%82%AD%E3%83%BC%E3%83%AC%E3%82%B9%E3%82%AD%E3%83%BC%20%E3%82%A8%E3%82%B9%E3%83%86%E3%82%A3%E3%83%9E%20%E3%83%8E%E3%82%A2%20%E3%83%B4%E3%82%A9%E3%82%AF%E3%82%B7%E3%83%BC%20%E3%82%B7%E3%82%A8%E3%83%B3%E3%82%BF%E3%80%80%E3%82%A4%E3%83%97%E3%82%B5%E3%83%A0%20%E3%82%AF%E3%83%A9%E3%82%A6%E3%83%B3%20%E3%83%97%E3%83%AA%E3%82%A6%E3%82%B9%20%E3%82%A6%E3%82%A4%E3%83%83%E3%82%B7%E3%83%A5%20%E3%82%AB%E3%83%AD%E3%83%BC%E3%83%A9%20%E3%83%8F%E3%82%A4%E3%82%A8%E3%83%BC%E3%82%B9%20%E3%82%A4%E3%82%B9%E3%83%88%20%E3%82%A6%E3%82%A4%E3%83%83%E3%82%B7%E3%83%A5%20%E3%83%A9%E3%82%A6%E3%83%A0%20%E3%82%AF%E3%83%AB%E3%83%BC%E3%82%AC%E3%83%BC&amp;__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&amp;tag=scexs-22" target="_blank" rel="noopener">Amazonで購入</a></div>
</div>
</div>
</div>
<p>本来、キーの金属ブレード部分はプラスチックのシェルに埋め込まれていて交換できる仕組みになっていないため、ドナーとなるブランクキーのブレードを削り取り、元々のブレードを力技でねじ込んでエポキシ樹脂で固めるしかなかったのだが・・・この商品は元々のブレードをそのまま流用できるようだ。</p>
<p><strong><img alt="005.png" src="https://7mc.org/2025/03/31/005.png" width="600" height="445" class="mt-image-none" /></strong></p>
<p><strong>こういう商品が欲しかったんだよ</strong>。</p>
<p><a href="https://www.amazon.co.jp/dp/B0CY29B2PC?&amp;linkCode=ll1&amp;tag=scexs-22">Amazonでは3ボタン</a>しかなかったが、<a href="https://hb.afl.rakuten.co.jp/hgc/g00rts36.h4tn53bc.g00rts36.h4tn6224/kaereba_main_202503251650374594?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Fauc-yu-i-partu%2Fkeyc10a%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Fauc-yu-i-partu%2Fi%2F10001474%2F&amp;rafcid=wsc_i_is_1087413314923222742">楽天市場で1ボタン</a>のものが見つかった。</p>
<p>本体890円＋送料190円で1,070円。ちょうどポイントが余っていたのでサクっと注文。</p>
<p>　</p>
<h3>届いたので早速装着してみる</h3>
<p><img alt="009.jpg" src="https://7mc.org/2025/03/31/009.jpg" width="600" height="411" class="mt-image-none" /></p>
<p>↑封筒から出てきたのはパッケージなしのバルク品。安っぽいプラ製で質感は150円のブランクキーと変わらない・・・。</p>
<p><img alt="010.jpg" src="https://7mc.org/2025/03/31/010.jpg" width="600" height="450" class="mt-image-none" /></p>
<p>内容物はシェル（表・裏）、ブレードに差し込むスリーブ、ネジ。</p>
<p>作業はまず既存キーブレードに付いている古いプラスチック片を全て取り除く。</p>
<p><img alt="011.jpg" src="https://7mc.org/2025/03/31/011.jpg" width="600" height="313" class="mt-image-none" /></p>
<p>T字の根元部分が見えたらスリーブを被せる。</p>
<p><img alt="012.jpg" src="https://7mc.org/2025/03/31/012.jpg" width="600" height="368" class="mt-image-none" /></p>
<p>この時、スリーブにある穴とブレードのネジ穴が合うように奥までしっかり差し込む。</p>
<p><img alt="014.jpg" src="https://7mc.org/2025/03/31/014.jpg" width="600" height="444" class="mt-image-none" /></p>
<p>スリーブは表裏があるので注意。シェルのこの位置に配置する。</p>
<p><img alt="015.jpg" src="https://7mc.org/2025/03/31/015.jpg" width="600" height="506" class="mt-image-none" /></p>
<p>リモコンキーを移設したら、スリーブごと挟み込むようにシェルを閉める。</p>
<p>閉める時はブレード側ではなくキーホルダーリング側から閉める。</p>
<p><img alt="016.jpg" src="https://7mc.org/2025/03/31/016.jpg" width="600" height="341" class="mt-image-none" /></p>
<p>こんな感じで閉まったらネジを締めて完成。</p>
<p><img alt="017.jpg" src="https://7mc.org/2025/03/31/017.jpg" width="600" height="453" class="mt-image-none" /></p>
<p>シェルの建て付けは正直微妙。しっかり締め込んでも隙間ができてしまう。</p>
<p>送料入れて1000円ほどの品物のだが、実際は150円ぐらいで売ってそうなクオリティだ。</p>
<pre>キーの付け根部分はかなり力が加わる箇所ですので、一度問題なく組み立てることが確認できましたら、<br />再度ばらしキーヘッド及びアタッチメントなど裏蓋以外は全て瞬間接着剤での固定を推奨します、<br />また付属のネジはスクリューネジです、純正ミリネジが使える場合はそちらを流用。</pre>
<p>商品ページには「瞬間接着剤での固定を推奨」「ネジは純正ミリネジを」と記載あり。好みに応じて処置しよう。</p>
<p>個人的には瞬間接着剤で固定してしまうとあとで困りそうなので、そのままにしている。</p>
<p><img alt="018.jpg" src="https://7mc.org/2025/03/31/018.jpg" width="600" height="450" class="mt-image-none" /></p>
<p>クオリティは正直微妙だが、これでロゴ以外はほぼ純正と同じ形に戻すことができた。</p>
<p></p>
<p>トヨタロゴ側のシェルはもしかしたら古いものが流用できるかも・・・と思ったが、スリーブ部分の形状が微妙に違っていたので難しそうだ。そもそもプラの質感も全然違うのでやめておいた方がよさそう。</p>
<p>ロゴを含めて完全に戻したい場合はディーラーに相談して新しく作ってもらうしかないだろう。使えればいいので細かいことは気にしないことにする。</p>
<p>　</p>
<h3>アリエクの結末</h3>
<p>あの後、返品申請は断られ勝手にクローズ。</p>
<p><img alt="003.jpg" src="https://7mc.org/2025/03/31/003.jpg" width="628" height="273" class="mt-image-none" /></p>
<p>再度紛争を申し立てたが「物流会社からの正式な書類（追跡番号/荷物の重量/公印を含む）をご提示ください」というふざけた解答。期限は3日。</p>
<p><img alt="007.jpg" src="https://7mc.org/2025/03/31/007.jpg" width="607" height="233" class="mt-image-none" /></p>
<p>世界中どこを探したらそんな書類をご丁寧に発行する運送会社があるというのか（そもそも個別に荷物重量なんて記録してないだろ）。</p>
<p>ネット検索してみるとこれもアリエクあるあるらしく、適当な理由をつけて断るための方便のようだ。</p>
<p>おそらくクレーム窓口にもノルマがあり、一定以上の返品を受け入れてしまうと罰則があるため「実現不可能なライン」を提示して返品を諦めされるテクニックが蔓延しているのだろう。本当に腐っている。</p>
<p>だがここで黙ったら相手の思う壺。とにかく3日以内に返事をしないといけない。</p>
<p>ひとまずヤマト運輸が貼ったであろう「元々の配送ラベルの上に貼られていた配送番号シール」を剥がした状態で写真を撮り直し、「運送会社に問い合わせたがこの配送ラベルが唯一の『正式な書類』だと言っている」と返事をした。</p>
<p>こちらにはこの配送ラベルしか武器がなく、相手からは"official document"を要求されているので、「これがofficial documentです」と言い返すしか方法がない。向こうが詭弁を使ってきている以上、こちらも詭弁でもなんでも使って反論するしかない。</p>
<p>　</p>
<h3>三度目の正直なるか</h3>
<p>結局、2度目の紛争も一方的にクローズされてしまった。めちゃくちゃだ。</p>
<p><img alt="008.jpg" src="https://7mc.org/2025/03/31/008.jpg" width="691" height="400" class="mt-image-none" /></p>
<p>Yahoo!知恵袋を見ていると「何度も申し立てを行い5回目で受理された」というケースもあったので諦めず3回目の申し立て。ここまでくれば根競べだ。</p>
<p>クロネコヤマトにもダメ元で問い合わせてみたがやはり「そんな書類は存在しない（発行できない）」という回答。</p>
<p>ただ荷物の重量は発送元（中国のCAINIAO）に問い合わせたくれたので、（受理されるかはわからないが）メールのスクショを証拠品として提出する予定。</p>
<p>正直150円のためにここまで振り回されたくないし、忘れてしまった方がいいのは分かっているのだが、ここまできてしまうと意地でも負けられない。。。</p>]]>
    </content>
</entry>

<entry>
    <title>Xiaomi 11T Proのバッテリーが劣化してきたので交換したい</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2025/03/28/xiaomi_11t_pro_battery_replacement_price.html" />
    <id>tag:7mc.org,2025://2.386</id>

    <published>2025-03-28T06:31:54Z</published>
    <updated>2025-04-08T01:59:28Z</updated>

    <summary>2年ほど前に買ったXiaomi 11T Proのバッテリーが劣化してきた。 ↑ピ...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="Xiaomi" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p><a href="https://7mc.org/2022/07/09/xiaomi_11t_pro_touchscreen_is_broken_or_not.html">2年ほど前に買ったXiaomi 11T Pro</a>のバッテリーが劣化してきた。</p>
<p><img alt="000.jpg" src="https://7mc.org/2022/07/09/000.jpg" width="600" height="400" class="mt-image-none" /></p>
<p>↑ピカピカだった頃のXiaomi 11T Pro</p>
<p>120W充電だか神ジューデンだかをバシバシやりまくった結果、フル充電から2,3時間で電池がなくなる始末。</p>
<p>同時期に両親が買ったXiaomi 11T（無印、最大67W充電）はまだまだ元気なことを考えると、急速充電も考え物である。</p>
<p>バッテリー以外に不満はないので、できれば電池交換して使い続けたい。</p>]]>
        <![CDATA[<h3>電池交換の方法</h3>
<p>Xiaomi 11T Proの電池交換は「メーカー修理」か「修理業者に依頼」することになる。</p>
<h4>■メーカー修理</h4>
<p>メーカー修理の方が確実ではあるが、大きな欠点として「強制的にスマホデータを初期化」されてしまう。</p>
<p>（バッテリーの交換ぐらいでデータを初期化をする必要なんてないだろうに・・・）</p>
<p>一から全アプリの設定をやり直すのは骨が折れるし、修理依頼中は一時的に別のスマホが必要になる。替えのスマホにすべての環境を移行するのも面倒で正直気が進まない。</p>
<p>ちなみにXiaomi 11T Proは<a href="https://www.mi.com/jp/service/support/xiaomi11t/pro-premium-service.html">2年保証</a>がある。気づいた時はすでに2年とちょっと経っていたのが本当に悔やまれる・・・。</p>
<p>　</p>
<h4>■修理業者に依頼</h4>
<p>修理業者に依頼する場合は業者の選定に手間がかかる。</p>
<p>田舎の店舗だとiPhoneしか受け付けていないこともあるので、まずXiaomi 11T Proのバッテリー交換をしてくれる店を探す必要がある。</p>
<p>また、純正バッテリーではなく互換バッテリーとの交換になるくせにメーカーより修理代が高くなる傾向にある。</p>
<p>一方でメリットとしては「データ消去しなくていい」場合が多い。</p>
<p>まぁ結局「万が一失敗したの時」のことを考えてバックアップは必要になるのだが・・・</p>
<p>　</p>
<h3>メーカーに問い合わせてみる</h3>
<p>Xiaomi 11T Pro購入時にMiアカウント作成＆製品登録済なのでマイページから依頼できると思ったのだが、見つからなかったので<a href="https://www.mi.com/jp/support/offline-form">Xiaomiメールサービス</a>のページからメールを送った。</p>
<p>メールフォームに「端末のシリアル番号」「端末のIMEI番号」の欄があったので記載したのだが、1営業日後に返ってきた返事は</p>
<pre>製品の詳細情報を確認致すため、<wbr />お客様がお使いの製品のご購入日、機種名、購買履歴とIMEI番号(※)をお教え下さい。<br />※15桁の数字、電話番号入力画面にて「*#06#」<wbr />を入力することで表示されます。<br />もしくは、外箱にも記載がございます。<br /><br />購入履歴(製品名、購入日、購入先の記載があるもの)のスクリーンショットを添付ファイルとしてお送りいただけませんで<wbr />しょうか。</pre>
<p>とのことで、また同じ情報を送ることに...。メール返事も微妙に遅く、やり取りをする度に1営業日かかるので地味にダルい。</p>
<p>中国本土だと10分以内にチャットが返ってくるだろ。カスタマーサポートやる気なさすぎ。</p>
<pre>-------------------邮件原件-------------------<br />自: ******* &lt;*******@*******.com&gt;;<br />接收日期: ******* 2025 18:32:57 GMT+0800 (中国标准时间)<br />至: Japan Email queue &lt;service.jp@support.mi.com&gt;;<br />主题: Re: バッテリーの交換について 【Email Number】*********</pre>
<p>しかもメール返信ヘッダを見る限り中国から返信してきてるんだよな。もうちょっと頑張ってほしい。</p>
<p>で、ようやく手に入れた【概算費用のご案内（税込）】がこちら。</p>
<pre>《Mi 11 T Pro》<br />・バッテリー交換修理費用：9020円<br /><br />もし基板交換する必要がある場合は<br />・基板交換+バッテリー交換修理費用：52030円<br /><br />※診断後に修理をキャンセルされた場合は、<wbr />修理キャンセル料金6,600円が発生いたします。</pre>
<p><a href="https://bbs.kakaku.com/bbs/J0000036997/SortID=25048785/">事前情報では</a>メーカー修理の場合はバッテリー交換で8700円、修理キャンセルで5500円と書かれていたのだが少々値上がりしている。円安の影響もあるんだろう。</p>
<p>あと万が一の基板交換で5万取られるのはエグすぎる。本体価格より高いやないか。</p>
<p>（というか「Xiaomi 11T Pro」で問い合わせたのに、回答が「Mi 11 T Pro」なんだが...中国大陸未発売の機種とはいえ、Xiaomiサポセン本当に大丈夫か？）</p>
<p>　</p>
<h3>修理業者に問い合わせてみる</h3>
<p>公式の修理費用が分かったので、今度は修理業者に問い合わせてみる。</p>
<p>通勤沿線に<a href="https://smartcool-group.com/">スマートクール</a>の店舗が2つあったためメールを送ると、一店舗が11,000円、もう一つの店舗が12,000円で交換してくれるとのこと。</p>
<p>一度来店して見積＆前金払い、修理パーツが届いたら再度来店して交換してもらう、という流れのようだ。</p>
<p>「データ削除はしない」との回答もあり、とにかくパパっとやってもらいたいならこちらの方がよさそうだ。</p>
<p>　</p>
<h3>替えのスマホを用意する</h3>
<p>どちらに頼むにせよ、バックアップも兼ねて替えのスマホが必要になる。</p>
<p>（結局端末を買うんなら乗り換えた方がいいのでは...という気持ちも無いことはないが、最近のスマホは高いのでなかなか手が出ないのである）</p>
<p>探す条件としては下記を重視した。</p>
<ul>
<li>一時利用目的なので、とにかく安価で</li>
<li>一時利用目的なので、性能はそこまで要らない（SoCは何でもいい、RAMは4GB～8GBあったらいいな）</li>
<li>Xiaomi 11T Proのストレージ128GBでは不足気味なので、可能なら256GB欲しい</li>
<li>eSIMではなくデュアルSIM</li>
<li>電池交換後もサブ端末として使うので、可能なら新品で</li>
</ul>
<p>第一候補として挙がったのがRedmi 14C (8GB+256GB)モデル。</p>
<div class="kaerebalink-box" style="text-align: left; padding-bottom: 20px; font-size: small; zoom: 1; overflow: hidden;">
<div class="kaerebalink-image" style="float: left; margin: 0 15px 10px 0;"><a href="https://hb.afl.rakuten.co.jp/hgc/g00u4hy6.h4tn5239.g00u4hy6.h4tn6bff/kaereba_main_202503281048505294?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Fxiaomiofficial%2Fm58574%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Fxiaomiofficial%2Fi%2F10000274%2F&amp;rafcid=wsc_i_is_1087413314923222742" target="_blank" rel="noopener"><img src="https://thumbnail.image.rakuten.co.jp/@0_mall/xiaomiofficial/cabinet/11419688/20250124-203325.jpg?_ex=128x128" style="border: none;" /></a></div>
<div class="kaerebalink-info" style="line-height: 120%; zoom: 1; overflow: hidden;">
<div class="kaerebalink-name" style="margin-bottom: 10px; line-height: 120%;"><a href="https://hb.afl.rakuten.co.jp/hgc/g00u4hy6.h4tn5239.g00u4hy6.h4tn6bff/kaereba_main_202503281048505294?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Fxiaomiofficial%2Fm58574%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Fxiaomiofficial%2Fi%2F10000274%2F&amp;rafcid=wsc_i_is_1087413314923222742" target="_blank" rel="noopener">Redmi 14C 8GB + 256GB 6.88インチディスプレイ 大容量バッテリー 急速充電 5000万画素 メモリー拡張 超スリムボディ 低ブルーライトディスプレイ AI搭載デュアルカメラ 夜間撮影 美顔モード スマートフォン スマホ 14C</a>
<div class="kaerebalink-powered-date" style="font-size: 8pt; margin-top: 5px; font-family: verdana; line-height: 120%;">posted with <a href="https://kaereba.com" rel="nofollow noopener" target="_blank">カエレバ</a></div>
</div>
<div class="kaerebalink-detail" style="margin-bottom: 5px;"></div>
<div class="kaerebalink-link1" style="margin-top: 10px;">
<div class="shoplinkrakuten" style="display: inline; margin-right: 5px; background: url('//img.yomereba.com/kl.gif') 0 -50px no-repeat; padding: 2px 0 2px 18px; white-space: nowrap;"><a href="https://hb.afl.rakuten.co.jp/hgc/1756f811.d8f34d4e.1756f812.c14dde71/kaereba_main_202503281048505294?pc=https%3A%2F%2Fsearch.rakuten.co.jp%2Fsearch%2Fmall%2FRedmi%252014C%2F-%2Ff.1-p.1-s.1-sf.0-st.A-v.2%3Fx%3D0%26scid%3Daf_ich_link_urltxt&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2F" target="_blank" rel="noopener">楽天市場で購入</a></div>
<div class="shoplinkamazon" style="display: inline; margin-right: 5px; background: url('//img.yomereba.com/kl.gif') 0 0 no-repeat; padding: 2px 0 2px 18px; white-space: nowrap;"><a href="https://www.amazon.co.jp/gp/search?keywords=Redmi%2014C&amp;__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&amp;tag=scexs-22" target="_blank" rel="noopener">Amazonで購入</a></div>
</div>
</div>
</div>
<p>2万円切ってて8GB+256GBなの強すぎる。もうこれでいいだろ・・・と思ってたら</p>
<blockquote>
<p>9. Q: Redmi 14CはNFC機能をサポートしていますか?<br />A: いいえ、Redmi 14CはNFC機能をサポートしていません。</p>
<p><a href="https://www.mi.com/jp/support/faq/details/KA-503383/">Redmi 14C FAQ</a></p>
</blockquote>
<p><strong>NFC無いのかよ</strong>！いや流石におサイフケータイは無いだろうけど、NFCすら無いの！？それは想定してなかった。</p>
<p>ようやくクレカのスマホタッチ決済に慣れてきたところでそれを塞がれるのは正直辛い。</p>
<p>うーんとりあえず保留。他ないのか。</p>
<p>　</p>
<h3>地味に厳しい物理SIM×2縛り</h3>
<p>今時のスマホは殆どがeSIM＋物理SIMの組み合わせ。物理SIM×2のデュアルはかなり少ない。</p>
<p>なぜデュアルSIMに拘るのかというと、中国にはeSIMがなく物理SIMしか対応していないから。</p>
<p>中国のSIMも同時利用すること想定すると、デュアルSIMの方が都合がいいのだ。</p>
<p>「日本側をeSIM、中国側を物理SIMにすればいいのでは？」と考えたこともあるが、中国滞在中に故障で急遽スマホを手配することになった際、中国ではeSIM対応機を手に入れることができず日本側の回線が使えなくなってしまうと困る・・・。</p>
<p>ということで、とにかくSIMは両方とも物理で持っておきたいのだ。</p>
<p>幸運なことに、物理SIM×2に対応している機種はエントリー機が多い。今回は安価な機種を探しているのでちょうど都合がいい。</p>
<p>※後から考えたら、二台持ちするのであれば一台はeSIMでもそこまで困らないか...近年はeSIMの方が便利なことも多いので、ここらでeSIMデビューしておいた方がよかったかも。</p>
<p>　</p>
<h3>デュアルSIM＋microSD対応の神機種を発見</h3>
<p>そして見つけたのがモトローラのmoto g24。</p>
<div class="kaerebalink-box" style="text-align: left; padding-bottom: 20px; font-size: small; zoom: 1; overflow: hidden;">
<div class="kaerebalink-image" style="float: left; margin: 0 15px 10px 0;"><a href="https://hb.afl.rakuten.co.jp/hgc/g00pukw6.h4tn5360.g00pukw6.h4tn6e97/kaereba_main_20250328111334842?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Fjism%2F4582239436974-45-37334-n%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Fjism%2Fi%2F14190041%2F&amp;rafcid=wsc_i_is_1087413314923222742" target="_blank" rel="noopener"><img src="https://thumbnail.image.rakuten.co.jp/@0_mall/jism/cabinet/0330/4582239436974.jpg?_ex=128x128" style="border: none;" /></a></div>
<div class="kaerebalink-info" style="line-height: 120%; zoom: 1; overflow: hidden;">
<div class="kaerebalink-name" style="margin-bottom: 10px; line-height: 120%;"><a href="https://hb.afl.rakuten.co.jp/hgc/g00pukw6.h4tn5360.g00pukw6.h4tn6e97/kaereba_main_20250328111334842?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Fjism%2F4582239436974-45-37334-n%2F&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2Fjism%2Fi%2F14190041%2F&amp;rafcid=wsc_i_is_1087413314923222742" target="_blank" rel="noopener">Motorola（モトローラ） moto g24（8GB/128GB）- アイスグリーン PB1A0001JP(MOTO G24)</a>
<div class="kaerebalink-powered-date" style="font-size: 8pt; margin-top: 5px; font-family: verdana; line-height: 120%;">posted with <a href="https://kaereba.com" rel="nofollow noopener" target="_blank">カエレバ</a></div>
</div>
<div class="kaerebalink-detail" style="margin-bottom: 5px;"></div>
<div class="kaerebalink-link1" style="margin-top: 10px;">
<div class="shoplinkrakuten" style="display: inline; margin-right: 5px; background: url('//img.yomereba.com/kl.gif') 0 -50px no-repeat; padding: 2px 0 2px 18px; white-space: nowrap;"><a href="https://hb.afl.rakuten.co.jp/hgc/1756f811.d8f34d4e.1756f812.c14dde71/kaereba_main_20250328111334842?pc=https%3A%2F%2Fsearch.rakuten.co.jp%2Fsearch%2Fmall%2Fmoto%2520g24%2F-%2Ff.1-p.1-s.1-sf.0-st.A-v.2%3Fx%3D0%26scid%3Daf_ich_link_urltxt&amp;m=http%3A%2F%2Fm.rakuten.co.jp%2F" target="_blank" rel="noopener">楽天市場で購入</a></div>
<div class="shoplinkamazon" style="display: inline; margin-right: 5px; background: url('//img.yomereba.com/kl.gif') 0 0 no-repeat; padding: 2px 0 2px 18px; white-space: nowrap;"><a href="https://www.amazon.co.jp/gp/search?keywords=moto%20g24&amp;__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&amp;tag=scexs-22" target="_blank" rel="noopener">Amazonで購入</a></div>
</div>
</div>
<div class="booklink-footer" style="clear: left;"></div>
</div>
<p>ストレージは128GBだが、それ以外は要件を満たしている。しかもデュアルSIMなのにmicroSDも使える。</p>
<p>市場価格は17,000円程度だが、<a href="https://store.motorola.co.jp/category/REFURBISH/">モトローラ公式のリファビッシュ品</a>なら税込12,800円。即買いだ。</p>
<p>タイミングが悪くアイスグリーンが売切でブラックになってしまったのだけが心残りではある。</p>
<p>　</p>
<h3>moto g24をセットアップ</h3>
<p>金曜日の夜に注文したら月曜日に出荷された。いいぞ早いぞmoto store。</p>
<p><img alt="002.jpg" src="https://7mc.org/2025/03/28/002.jpg" width="400" height="533" class="mt-image-none" /><img alt="003.jpg" src="https://7mc.org/2025/03/28/003.jpg" width="400" height="533" class="mt-image-none" /></p>
<p>↑シンプルな箱を開けるとケース付きの本体が。他の内容物はSIMピンと説明書だけ。</p>
<p>初期設定をしたらせっせとアプリを移行し、Xiaomi 11T Proと同じ環境を作っていく。</p>
<p>電源を入れる度に「Hello, moto!」と喚くのがうるさいので<a href="https://sumahodigest.com/?p=13415">オフにする</a>のを忘れずに。</p>
<p>心配していたストレージ容量については512GBのmicroSDカードを購入し、<a href="https://orefolder.jp/2019/06/xperia-1-internal-storage/">SDカードの内部ストレージ化</a>をすることで誤魔化した。</p>
<p>SDカード破損時に復旧が難しくなるデメリットもあるが、あくまで一時利用スマホなので問題ないだろう。</p>
<p>　</p>
<h3>エントリー機ゆえの欠点はもちろんある</h3>
<p>例えば、Xiaomi 11T Proでは当たり前に使えていたフローティングウィンドウ機能が使えない。</p>
<p>レビューを見るとg64やg52j、g53jでは対応しているようなので、エントリー機ゆえの欠点ということになるだろう。</p>
<p>Redmi 14Cでも非対応のようなのでエントリー機の宿命か。普段から多用している機能なので物足りなさは感じる。</p>
<p>そのほか細かい所で使いにくさは感じるが「ま、12,800円だしな」で飲み込めてしまうレベルではある。</p>
<p>あとSoCがHelio G85なので当然カクツキやモタツキは発生する。BluetoothイヤホンでYoutube視聴すら厳しい（初めの数秒は音声が乱れる）。けどまぁ12,800円だし。</p>
<p>　</p>
<h3>で、結局Xiaomi 11T Proのバッテリーは？</h3>
<p>だいぶ話が逸れてしまったが、Xiaomi 11T Proのバッテリー交換について。</p>
<p>結局、替えとして買ったmoto g24がそれなりに使えてしまうことが判明したため、しばらくは二台持ちすることに。</p>
<p>Xiaomi 11T Proはサブとして「電池が切れても気にしない」運用をしてみると、<strong>困ったことに</strong>あんまり困らない。</p>
<p>電池交換どうしよう・・・としばらく悩んだところで、<strong>第三の選択肢</strong>が頭をよぎった。</p>
<p>「自分でバッテリー交換すればいいのでは」</p>
<p>ということで、初めてスマホのDIY電池交換にトライすることに。</p>
<p>上手く行ったら続編として公開します。上手く行くかなぁ・・・。</p>]]>
    </content>
</entry>

<entry>
    <title>「パスポートは本人確認に使えない」「身分証ではなくなった」は大嘘</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2025/03/15/passport_is_still_valid_as_an_identification.html" />
    <id>tag:7mc.org,2025://2.384</id>

    <published>2025-03-15T10:31:15Z</published>
    <updated>2025-04-08T02:02:17Z</updated>

    <summary>X(旧Twitter)を見ていると「パスポートから住所欄が消えて本人確認に使えな...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="生活" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p>X(旧Twitter)を見ていると「<strong>パスポートから住所欄が消えて本人確認に使えなくなった</strong>」<a href="https://x.com/search?q=%E3%83%91%E3%82%B9%E3%83%9D%E3%83%BC%E3%83%88%20%E4%BD%8F%E6%89%80%E3%80%80%E6%9C%AC%E4%BA%BA%E7%A2%BA%E8%AA%8D&amp;src=typed_query">という投稿</a>を目にすることがある。</p>
<blockquote class="twitter-tweet">
<p lang="ja" dir="ltr">マイナンバーカードの暗証番号をうっかり間違えてロックされたので再発行手続きに行ったら、「本人確認としてマイナンバーカードと"別に"もう1枚提示して下さい」と言われたのですが<br /><br />保険証も運転免許証もマイナンバーカードだけになったら、本人確認できなくて詰む人が結構出てしまうのでは...？</p>
-- Tsuno K, PhD, MPH (@KanamiTsuno) <a href="https://twitter.com/KanamiTsuno/status/1900149666563670366?ref_src=twsrc%5Etfw">March 13, 2025</a></blockquote>
<p>
<script async="" src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</p>
<p>こちらの投稿に寄せられた反応を見ていても同様の勘違いをしている人が多い。</p>
<p>　</p>
<p>また、Web検索すると司法書士を名乗る人物までもが同じような記事を書いている。</p>
<blockquote>
<p>実は、2020年2月4日以降に発行されたパスポートには、「住所」が記載されていません。</p>
<p>そして、「住所」が記載されないパスポートは、身分証明書とは認められないことになってしまいました。</p>
<p><a href="https://awrship.or.jp/blog/blog-2449/">「パスポート」は、身分証明書ではなくなりました</a></p>
</blockquote>
<p>これをそのまま鵜吞みにすると「<strong>もうパスポートは身分証として使えなくなったんだな</strong>」と勘違いすることだろう。</p>
<p><strong><span style="background-color: #f8cac6;">だがちょっと待ってほしい。</span></strong></p>
<p>もしパスポートが身分証明に使えないのであれば、もはやパスポート自身の意味を成さないではないか。</p>
<p>というか海外渡航時の出国審査や帰国時の入国審査でパスポートを提示して「本人確認」をしているではないか。</p>
<p>よく考えてほしい。<strong>パスポートには「顔写真」「本名」「生年月日」「性別」といった本人を特定できる情報が記載されている</strong>。少なくとも顔写真のない保険証よりは身分証としての要件を満たしているではないか。</p>
<p>「住所欄がなくなったパスポートは身分証明に使えない」は本当なのか？（結論から言うと大嘘です）</p>]]>
        <![CDATA[<h3>答えは「一部使えない場合もあるが、使える場合もちゃんとある」</h3>
<p>確かに「住所記載のないパスポート単体では本人確認できなくなった」ケースは存在する。</p>
<p>それは<strong>銀行窓口での本人確認</strong>の場合。</p>
<div class="section-content align-items-start">
<div class="section-content-text col-md order-12">
<blockquote>
<p>以下の（1）または（2）の本人確認書類により氏名、住居および生年月日を確認します。<br />また、取引を行う目的および職業も確認します。</p>
<p>（1）次の本人確認書類の場合には、窓口で原本を直接提示することによって確認を行います。</p>
<ol>
<li>運転免許証</li>
<li>運転経歴証明書（2012年4月1日以降交付のもの）</li>
<li><strong>旅券（パスポート）（2020年2月3日以前に申請されたもの※）</strong></li>
<li>個人番号カード（マイナンバーカード）</li>
<li>在留カード・特別永住者証明書</li>
<li>官公庁が顔写真を貼付した各種福祉手帳（身体障害者手帳など）　</li>
<li><u>官公庁から発行・発給された書類で、その官公庁が顔写真を貼付したもの（ただし、本人から提示された場合などに限ります。）</u></li>
</ol>
<p>※<strong>所持人記入欄のない旅券（2020年2月4日以降に申請されたもの）は、1点のみでは本人確認書類として使用できません。</strong>下記（2）のとおり、住居の記載のある他の本人確認書類等も併せて提示する必要があります。</p>
<p><a href="https://www.zenginkyo.or.jp/article/tag-f/7483/">本人確認書類って何？ | F.銀行で手続き | 一般社団法人 全国銀行協会</a></p>
</blockquote>
<p>これは「犯罪による収益の移転防止に関する法律（犯罪収益移転防止法）」で定められており、口座開設や高額振込の際は「氏名」「<strong>住居</strong>」「生年月日」の確認が必要となる。</p>
<p>住所記載がないパスポートでは上記3点のうち「住居」を確認できないため<strong>単体では</strong>本人確認できないが、他に住所が確認できる書類があればOKということだ。</p>
<p>　</p>
<h3>スマホ契約時もダメな場合がある</h3>
<p>スマホの契約時の本人確認についても同様で、「パスポート単体ではNG」または「パスポート自体NG」だった。</p>
<p>例えばauは住所記載のパスポートなら単体でOK。住所がない場合は追加資料が必要。</p>
<blockquote>
<p>パスポート（日本国旅券）</p>
<p>所持人記入欄が無いパスポート（2020年2月以降発行）は、補助書類が必要です。</p>
<p><a href="https://www.au.com/support/service/mobile/procedure/preparation/">au Style/auショップでのau携帯電話お申し込みに必要なもの</a></p>
</blockquote>
<p></p>
<p>ソフトバンクも同様。</p>
<div class="accordion-type02_trigger js-accordion-trigger" aria-controls="accordion-type02-uid02" aria-expanded="true">
<blockquote>
<div class="accordion-type02_trigger js-accordion-trigger" aria-controls="accordion-type02-uid02" aria-expanded="true">
<p class="accordion-type02_trigger-title">日本国パスポート</p>
<span class="accordion-type02_trigger-icon"></span></div>
<div class="accordion-type02_detail" id="accordion-type02-uid02" aria-hidden="false">
<div class="accordion-type02_detail-inner" data-sb-module-container="3" data-sb-module-theme="gray01">
<ul class="list-lv1-disc" data-sb-module-theme-parent="gray01">
<li class="list-lv1-disc_item">日本国政府発行の顔写真、氏名、生年月日、現住所が記載で有効期限内のもの。</li>
<li class="list-lv1-disc_item">確認書類の現住所と異なる場合、または住所記載欄がない場合は、住民票やご本人さま宛の現住所が記載されている公共料金領収書などが必要となります（発行日から3ヵ月以内のもの）。</li>
</ul>
<p><a href="https://www.softbank.jp/shop/support/necessary/id/">本人確認書類 | 店舗を探す | ソフトバンク</a></p>
</div>
</div>
</blockquote>
</div>
<p></p>
<p>ドコモはより厳しく、パスポートが本人確認資料として記載されていなかった（パスポートは本人確認資料として使えない）。</p>
<p><a href="https://www.docomo.ne.jp/support/identification/">ご来店時の本人確認書類 | お客様サポート | NTTドコモ</a></p>
<p>　</p>
<h3>行政手続時の本人確認には使える場合が多い</h3>
<p>ではマイナンバーカードを失くした場合はどうだろうか。</p>
<p>「マイナンバーカード 再発行 必要書類」などでWeb検索してランダムに確認してみたところ、確認した中ではすべての市区町村で「旅券」「パスポート」が本人確認に使える旨の記載があった。</p>
<p>例：</p>
<ul>
<li><a href="https://www.city.osaka.lg.jp/tsurumi/page/0000614396.html#honninkakunin">大阪市鶴見区：マイナンバーカード（個人番号カード）の紛失と再交付について</a></li>
<li><a href="https://www.city.setagaya.lg.jp/01045/205.html">マイナンバー制度に関する本人確認資料一覧 _ 世田谷区公式ホームページ</a></li>
<li><a href="https://www.town.honbetsu.hokkaido.jp/web/procedure/datails/post_9.html">本人確認書類 _ 戸籍・住民登録の届出 _ 戸籍・税・保険・年金 _ 本別町ホームページ</a></li>
<li><a href="https://www.city.itami.lg.jp/SOSIKI/SHIMIN/SHIMIN/mynumber/36217.html">マイナンバーカードの紛失・返納と再交付について／伊丹市</a></li>
<li><a href="https://www.city.wakayama.wakayama.jp/kurashi/koseki_jyuminhyo/1001082/1013166/1013200.html">マイナンバーカードの再交付申請について｜和歌山市</a></li>
</ul>
<p>また、マイナンバーカードに限らず、住民票や戸籍謄本などにかかわる本人確認についても同様でパスポートによる本人確認はできるようだ。</p>
<p>　</p>
<h3>運転免許証の再発行にも使える都道府県あり</h3>
<p>次に運転免許証の再発行に必要な本人確認資料を確認してみた。</p>
<p>兵庫県警察のWebサイトによると、運転免許証の「再交付手続きに必要なもの」として「旅券」が明記されている。</p>
<blockquote>
<p>身分が証明できるもの<br />（個人番号カード、<strong>旅券</strong>、在留カード、特別永住者証明書、学生証、健康保険証、他の免許証など）</p>
<p><a href="https://www.police.pref.hyogo.lg.jp/traffic/license/saikofu/index.htm">兵庫県警察　運転免許　運転免許再交付手続き</a></p>
</blockquote>
<p>神奈川県警察でも「パスポート」が明記されている。</p>
<blockquote>
<p><span>身分を確認できる書類等<br /></span>例：健康保険証・資格確認書・マイナンバーカード（マイナンバーの通知カードは使用できません）・住民基本台帳カード・<strong>パスポート</strong>・学生証・社員証・身体障害者手帳・年金手帳・他官庁発給の許可証（免状）・6ヶ月以内に発行された住民票の写し（コピー不可）・外国籍の方の場合は、在留カード・特別永住者証明書等</p>
<p><a href="https://www.police.pref.kanagawa.jp/tetsuzuki/menkyo/mes83003.html">運転免許証の再交付手続について_神奈川県警察</a></p>
</blockquote>
<p>一方で、香川県警察は「住所、氏名、生年月日等を確認できる書類」が必要とのことで、パスポートの記載もない。</p>
<blockquote>
<p>申請に必要な書類等</p>
<ul>
<li>免許証を紛失・盗難等された方は、住所、氏名、生年月日等を確認できる書類(住民票、マイナンバーカード、健康保険証、パスポート、学生証、在留カード等)が、汚損・破損された方は、免許証が必要です。</li>
</ul>
<p><a href="https://www.pref.kagawa.lg.jp/police/ksmenkyo/menkyo/tetsuzuki/saikoufu.html">免許証の再交付申請｜香川県警察</a></p>
</blockquote>
<p>このあたりは各都道府県の公安委員会が決めているようなので、都道府県によって違うようだ。</p>
<p>　</p>
<h3>ケース毎に根拠となる法令が異なるため</h3>
<p><span>なぜここまでバラバラなのかというと、手続きによって根拠となる法令が異なり、本人確認に必要な書類も異なるから。</span></p>
<p><span>犯罪に利用されるリスクの高い銀行口座やスマホ契約の本人確認は厳しく、</span><span>行政手続きでは身分証がなくなって「詰む」ことがないよう緩めに規定されているんだろう。</span></p>
<p><span>このあたりは総務省がめちゃくちゃ緻密にまとめ上げた資料(pdf)があるため、興味がある方は下記リンク先を確認してほしい。</span></p>
<ul>
<li><a href="https://www.soumu.go.jp/main_sosiki/hyouka/hyouka_kansi_n/ketsuka_nendo/pdf/000254168.pdf"><span>行政手続等における本人確認に関する調査結果に基づく通知</span></a></li>
<li><a href="https://www.soumu.go.jp/main_sosiki/hyouka/hyouka_kansi_n/ketsuka_nendo/pdf/000254169.pdf"><span>行政手続等における本人確認に関する調査 資料編</span></a></li>
</ul>
<p>　</p>
<h3>パスポート作っとけば安心なのは変わっていない</h3>
<p>ということで、家にパスポートを保管しておけば、もし身分証一式を失くしたとしてもマイナンバーカードは再発行してもらえる。</p>
<p>そしてマイナンバーカードさえあればすべての本人確認が可能になるため、各種手続きも運転免許証の再発行も何でもOKになる。</p>
<p>「パスポートは身分証として十分に使える」し、「保険証や運転免許証がマイナンバーカードに一体化されていく今こそパスポートを持って（家において）おくべき」だといえる。少なくとも「身分証全部失くして詰む」ということは回避できる。</p>
<p><a href="https://www.nikkei.com/article/DGXZQOUA200FA0Q5A220C2000000/">日本人のパスポート保有率は17.5%</a>で他国と比較してもかなり低いと言われている。1回取得すれば10年有効な身分証として持っていて損はないので、未取得の方はぜひ一度取得してみてはいかがだろうか。</p>
<p>なお、<a href="https://www.gov-online.go.jp/useful/article/202301/1.html">マイナポータルが使える場合はオンライン申請が可能。</a>何度も窓口に足を運ばなくてもいいのでオススメである。</p>
</div>
</div>]]>
    </content>
</entry>

<entry>
    <title>[MySQL] MariaDB 文字コードの不一致によりINDEX検索が激遅に</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2025/03/14/mysql_mariadb_slow_query_with_index_caused_by_collation_mismatch.html" />
    <id>tag:7mc.org,2025://2.382</id>

    <published>2025-03-14T09:50:00Z</published>
    <updated>2025-03-14T09:51:04Z</updated>

    <summary>前回までの記事でMariaDBをいろいろと弄っていた所、INDEX作成済み項目で...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="MySQL" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p><a href="https://7mc.org/2024/08/12/aws_mariadb_and_unixodb_cconnect_strage_engine.html">前回までの記事</a>でMariaDBをいろいろと弄っていた所、<strong>INDEX作成済み項目で</strong>JOINやWHEREをしているにもかかわらず結果取得にめちゃくちゃ時間がかかるケースがあった。</p>
<p>SQLのイメージはこんな感じ。</p>
<pre>select * from TABLE1<br />LEFT JOIN TABLE2 ON TABLE1.KEYCOL1 = TABLE2.KEYCOL1 AND TABLE1.KEYCOL2 = TABLE2.KEYCOL2<br />WHERE EXISTS (SELECT 1 FROM TABLE3 WHERE KEYCOL1 = TABLE1.KEYCOL1 AND KEYCOL2 = TABLE1.KEYCOL2)</pre>
<p>各テーブルのデータ件数がかなり多いため、時間がかかるのは仕方がないのかな...と当初は思っていた。</p>
<p>　</p>
<h3>EXPLAINで調査</h3>
<p>SQL速度に困ったら<a href="https://thinkit.co.jp/article/9658">まず実行計画</a>を確認。</p>
<p>実行しようとしているSQL文の頭に「EXPLAIN」を追加すると、SQL文の実行計画を取得することができる。</p>]]>
        <![CDATA[<p>実行結果イメージはこんな感じ。</p>
<pre>+------+--------------------+--------+-------+-----------------+-----------+---------+----------------+----------+----------+--------------------------+<br />| id   | select_type        | table  | type  | possible_keys   | key       | key_len | ref            | rows     | filtered | Extra                    |<br />+------+--------------------+--------+-------+-----------------+-----------+---------+----------------+----------+----------+--------------------------+<br />|    1 | PRIMARY            | TABLE1 | ALL   | NULL            | NULL      | NULL    | NULL           | 243604   |    46.68 | Using where              |<br />|    1 | PRIMARY            | TABLE2 | ALL   | NULL            | NULL      | NULL    | NULL           | 323873   |   100.00 | Using                    |<br />|    2 | DEPENDENT SUBQUERY | TABLE3 | index | NULL            | INDEX3    | 182     | NULL           | 2441569  |   100.00 | Using where; Using index |<br />+------+--------------------+--------+-------+-----------------+-----------+---------+----------------+----------+----------+--------------------------+</pre>
<p>ポイントは「type」。</p>
<p>「ALL」はインデックスが効いておらず全データ検索をしており激遅。</p>
<p>「index」はインデックスは効いているものの、インデックス全体をスキャンしており速度低下の原因になる。</p>
<p>大本のTABLE1はまだ未調整なので置いとくとして、JOINとWHEREで使っているTABLE2とTABLE3は<strong>KEYCOL1</strong>も<strong>KEYCOL2</strong>もインデックスを張っており、サクッと取って来れそうなんだが...。</p>
<p>　</p>
<h3>FORMAT=JSON指定する</h3>
<p>どうやら<a href="https://dev.mysql.com/doc/refman/8.0/ja/explain-output.html">MySQLのEXPLAINにはいくつかオプションがあり</a>、FORMAT=JSONを指定するとJSON形式で結果取得できる・・・だけではなく、<a href="https://qiita.com/mamy1326/items/9960061ba9a74cda8d6b#formatjson">JSON時のみ出力される項目がある</a>らしい。なんだその隠し仕様。</p>
<pre> {<br />  "query_block": {<br />    "select_id": 1,<br />    "table": {<br />      "table_name": "TABLE1",<br />      "access_type": "ALL",<br />      "rows": 121802,<br />      "possible_keys": "NULL",<br />      "attached_condition": "B = 1 and C is not null"<br />    },<br />      "table": {<br />        "table_name": "TABLE2",<br />        "access_type": "ALL",<br />        "possible_keys": "NULL",<br />        "rows": 323873,<br />        "attached_condition": "convert(TABLE2.KEYCOL1 using utf8mb4) AND convert(TABLE2.KEYCOL2 using utf8mb4) = TABLE2.KEYCOL2",<br />      }<br />    },<br />    "subqueries": [<br />      {<br />        "query_block": {<br />          "select_id": 2,<br />          "table": {<br />            "table_name": "TABLE3",<br />            "access_type": "index_subquery",<br />            "possible_keys": ["KEYCOL1", "KEYCOL2"],<br />            "key": "KEYCOL1",<br />            "key_length": "344",<br />            "used_key_parts": ["KEYCOL1", "KEYCOL2"],<br />            "rows": 2441569,<br />            "attached_condition": "trigcond(convert(TABLE3.KEYCOL1 using utf8mb4) = TABLE1.KEYCOL1 AND convert(TABLE3.KEYCOL2 using utf8mb4) = TABLE1.KEYCOL2)",<br />            "using_index": true<br />          }<br />        }<br />      }<br />    ]<br />  }</pre>
<p>↑こちらも一部情報をオミットしている。あくまでもイメージということで。</p>
<p>出てきた情報を眺めていると、WHERE区やJOIN ON区に書いた検索条件"attached_condition"の項目が"<strong>convert(TABLE2.KEYCOL1 using utf8mb4)</strong> = TABLE1.KEYCOL"となっている。</p>
<p>convertは文字コードの変換を行う関数だが、なぜこんなものが内部的に呼ばれているのか。</p>
<p>　</p>
<h3>テーブル定義を再確認してみる</h3>
<p>なぜWHERE区やJOIN ON区の照合で文字コード変換をしているのか...？</p>
<p>テーブルのCREATE文を確認すると、TABLE2とTABLE3だけ文字コードが合っていなかった。</p>
<pre>CREATE TABLE `TABLE1` (<br />  中略<br />) ENGINE=InnoDB DEFAULT CHARSET=<strong>utf8mb4</strong> COLLATE=utf8mb4_general_ci<br /><br />CREATE TABLE `TABLE2` (<br />  中略<br />) ENGINE=InnoDB DEFAULT CHARSET=<strong>utf8 </strong>COLLATE=utf8_general_ci<br /><br />CREATE TABLE `TABLE3` (<br />  中略<br />) ENGINE=InnoDB DEFAULT CHARSET=<strong>utf8 </strong>COLLATE=utf8_general_ci</pre>
<p>全テーブルutf8mb4を指定していたつもりだったのが、一部だけ不注意でutf8になっていたのだ。</p>
<p>照合する項目の文字コードが一致しておらず、MariaDBが暗黙的に変換してくれていたのだろう（気づかなかった...）。</p>
<p>どちらのテーブルも作りたてだったのでサクッと削除し、utf8mb4で再作成＆データ流し込み。</p>
<pre>+------+-------------+--------+------+-----------------+-----------+---------+----------------+--------+----------+--------------------------+<br />| id   | select_type | table  | type | possible_keys   | key       | key_len | ref            | rows   | filtered | Extra                    |<br />+------+-------------+--------+------+-----------------+-----------+---------+----------------+--------+----------+--------------------------+<br />|    1 | PRIMARY     | TABLE1 | ALL  | NULL            | NULL      | NULL    | NULL           | 243604 |    46.68 | Using where              |<br />|    1 | PRIMARY     | TABLE2 | ref  | INDEX1          | INDEX1    | 242     | TABLE1.KEYCOL1 | 323873 |   100.00 | Using where; Using index |<br />|    1 | PRIMARY     | TABLE3 | ref  | INDEX2          | INDEX2    | 182     | TABLE1.KEYCOL1 | 157324 |   100.00 | Using where; Using index |<br />+------+-------------+--------+------+-----------------+-----------+---------+----------------+--------+----------+--------------------------+</pre>
<p>EXPLAINで確認するとtypeが"ref"に変わった。primary key（ユニーク）ではないINDEXで検索できている証拠だ。</p>
<p>（この後、データを見直してKEYCOLをprimary key指定したらtypeが"ref"から"const"に変わり、rows=1になった。主キーで検索するのが最も速い）</p>
<p>　</p>
<h3>厳密には照合順序の違いが原因か</h3>
<p>今回KEYCOLとして指定していた項目はvarchar型だったので、文字コード違いによる影響を受けたと思われる。</p>
<p>当初はconvert関数の内部呼出回数が多くて速度低下しているのかと思ったが、INDEXを正しく使用できていなかったところを見ると、おそらく文字コードが異なる＝照合順序が異なることでINDEXの照合が正しく行われていなかったのだろう。</p>
<p>SQLの速度問題は様々な原因があり、SQL文の最適化やINDEXの張り方、データの持たせ方などなど、ありがちな部分からチェックしていったのだが、テーブルの文字コード設定まではなかなか気が回らなかった。</p>
<p>　</p>
<h3>余談</h3>
<p>調査の中で「<a href="http://blog.livedoor.jp/sasata299/archives/51336006.html">カバリングインデックス</a>」（取得項目も含めて全部INDEXにブチ込んだら速いよ！）という手法に出会えたのも幸いだった。</p>
<p>INDEXといえばキー項目に張るものだという思い込みがあり、きちんと調べたことがなかった。</p>
<p>今回WHEREやJOINで使いたいテーブルは「項目数少、データ量大」で、なかなか速度が出ず困っていたので本当に助かった。</p>]]>
    </content>
</entry>

<entry>
    <title>Xiaomi Power Bank 10000mAh 22.5W Liteを買った（レビュー）</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2025/01/13/xiaomi_power_bank_10000mah_225w_lite.html" />
    <id>tag:7mc.org,2025://2.383</id>

    <published>2025-01-13T10:58:12Z</published>
    <updated>2025-01-22T15:40:33Z</updated>

    <summary>愛用していたモバイルバッテリーが壊れた。 20000mAhの大容量と60W充電対...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="Xiaomi" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p><a href="https://www.ravpower.jp/rp-pb201/">愛用していたモバイルバッテリー</a>が壊れた。</p>
<p>20000mAhの大容量と60W充電対応で安心感の塊だった反面、持ち歩くには微妙に重くて使いにくかったので、これを機に10000mAhのものに買い替えることに。</p>
<p>初めはAnkerを候補にしていたが、最終的にXiaomiのモバイルバッテリーを購入した。</p>
<p>　</p>
<h3>候補① Anker Power Bank (10000mAh, 22.5W)</h3>
<p>まず候補に挙がったのが<a href="https://www.amazon.co.jp/dp/B0CQX67KTW?coliid=IZEM7GAIOOS9T&amp;colid=2P8AZ9RAYTUBT&amp;th=1&amp;linkCode=ll1&amp;tag=scexs-22&amp;linkId=37a03eb224063ab10274580ac73e98f7&amp;language=ja_JP&amp;ref_=as_li_ss_tl">Anker Power Bank (10000mAh, 22.5W)</a></p>
<p><a href="https://www.amazon.co.jp/dp/B0CQX67KTW?coliid=IZEM7GAIOOS9T&amp;colid=2P8AZ9RAYTUBT&amp;th=1&amp;linkCode=ll1&amp;tag=scexs-22&amp;linkId=37a03eb224063ab10274580ac73e98f7&amp;language=ja_JP&amp;ref_=as_li_ss_tl"><img alt="001.png" src="https://7mc.org/2025/01/13/001.png" width="286" height="400" class="mt-image-none" /></a></p>
<p>コンパクトでストラップケーブルつき。22.5W対応で200gと軽量、スペック的に申し分なしで万人にお勧めできる一品。</p>
<p>Amazon価格3500円。</p>
<p>　</p>
<h3>候補② Xiaomi 22.5W Power Bank 10000mAh (Integrated Cable)</h3>
<p>もう一つの候補が<a href="https://www.amazon.co.jp/dp/B0D9YV5LFB?coliid=IR7T0X18H5XWQ&amp;colid=2P8AZ9RAYTUBT&amp;th=1&amp;linkCode=ll1&amp;tag=scexs-22&amp;linkId=9a895a041547a9329844e0f858230281&amp;language=ja_JP&amp;ref_=as_li_ss_tl">Xiaomi 22.5W Power Bank 10000mAh (Integrated Cable)</a></p>
<p><a href="https://www.amazon.co.jp/dp/B0D9YV5LFB?coliid=IR7T0X18H5XWQ&amp;colid=2P8AZ9RAYTUBT&amp;th=1&amp;linkCode=ll1&amp;tag=scexs-22&amp;linkId=9a895a041547a9329844e0f858230281&amp;language=ja_JP&amp;ref_=as_li_ss_tl"><img alt="51mK+kCehmL._AC_SY450_.jpg" src="https://7mc.org/2025/01/13/51mK%2BkCehmL._AC_SY450_.jpg" width="180" height="450" class="mt-image-none" /></a></p>
<p>こちらはケーブル内蔵モデル。22.5W対応で213gと①とほぼ同性能でコスパ良。</p>
<p>ただし厚みが<span>26.9mmある。①の厚み16mmと比べて11mmも厚く、</span><span>スマホに重ねて充電しながら持つにはちょっと厳しい。</span></p>
<p><span>Amazon価格2200円。</span></p>
<p><span>　</span></p>
<h3><span>候補③ Xiaomi Power Bank 10000mAh 22.5W Lite</span></h3>
<p><span>そして最後の候補が</span><span><a href="https://www.amazon.co.jp/10000mAh-%E3%83%A2%E3%83%90%E3%82%A4%E3%83%AB%E3%83%90%E3%83%83%E3%83%86%E3%83%AA%E3%83%BC-%E6%9C%80%E5%A4%A722-5W%E5%87%BA%E5%8A%9B-3%E5%8F%B0%E5%90%8C%E6%99%82%E5%85%85%E9%9B%BB%E5%8F%AF%E8%83%BD-Android%E5%AF%BE%E5%BF%9C/dp/B0DJBXGW2X?&amp;linkCode=ll1&amp;tag=scexs-22&amp;linkId=c6436d2e93e1c2334ef95e8e6e876b07&amp;language=ja_JP&amp;ref_=as_li_ss_tl">Xiaomi Power Bank 10000mAh 22.5W Lite</a></span></p>
<p><a href="https://www.amazon.co.jp/10000mAh-%E3%83%A2%E3%83%90%E3%82%A4%E3%83%AB%E3%83%90%E3%83%83%E3%83%86%E3%83%AA%E3%83%BC-%E6%9C%80%E5%A4%A722-5W%E5%87%BA%E5%8A%9B-3%E5%8F%B0%E5%90%8C%E6%99%82%E5%85%85%E9%9B%BB%E5%8F%AF%E8%83%BD-Android%E5%AF%BE%E5%BF%9C/dp/B0DJBXGW2X?&amp;linkCode=ll1&amp;tag=scexs-22&amp;linkId=c6436d2e93e1c2334ef95e8e6e876b07&amp;language=ja_JP&amp;ref_=as_li_ss_tl"><img alt="003.jpg" src="https://7mc.org/2025/01/13/003.jpg" width="214" height="400" class="mt-image-none" /></a></p>
<p>22.5W対応で214gと①②とほぼ同性能で、コスパは3つの中で一番（Amazon価格1660円）。</p>
<p>他と比べると寸法が縦長だけど厚さが15mmなので<span>スマホに重ねて持つのも問題なさそう。</span></p>]]>
        <![CDATA[<h3><span>欲を言えばもうちょっと急速充電したいけど...</span></h3>
<p><span>欲を言えばせめて30W充電したかったんだけど、AnkerもXiaomiも30W対応なのは20000mAh以上のモデルしかなかったため妥協。</span></p>
<p><span>ちなみに3製品とも<strong>22.5W</strong>と書いてあるが、これはHuaweiのSCPプロトコル(10V⎓2.25A)に対応しているスマホのみ有効で、それ以外のスマホでは20W( 10V⎓2.25A / 9V⎓2.23A )がMAXとなる。ちょっとタイトル詐欺っぽい...</span></p>
<p><span>（追記）なんてことを書いた翌日に<a href="https://www.mi.com/global/product/xiaomi-33w-power-bank-10000-integrated-cable/">10000Ahで33Wのケーブル内蔵モデル</a>がグローバルで</span><span>発表された様子。</span></p>
<p><a href="https://www.mi.com/global/product/xiaomi-33w-power-bank-10000-integrated-cable/"><span><img alt="016.jpg" src="https://7mc.org/2025/01/13/016.jpg" width="600" height="325" class="mt-image-none" /></span></a></p>
<p><span>22.5Wのケーブル内蔵モデルが105.2 × 26.9 × 65.2mmなのに対し、33Wモデルは80.9 × 26.0 × 65.9mmと更にコンパクトになっているのには驚いた。完全に上位互換。</span><span></span><span></span></p>
<p><span>　</span></p>
<h3><span>結局、候補③ Xiaomi Power Bank 10000mAh 22.5W Lite を買った</span></h3>
<p><span>普通は「迷ったらAnker」なんだけど、今Xiaomiのスマホを使っているのでXiaomi製の③を選択。</span></p>
<p><span><img alt="004.jpg" src="https://7mc.org/2025/01/13/004.jpg" width="400" height="503" class="mt-image-none" /></span></p>
<p><span>裏面のメーカー名以外、外箱に日本語は一切なし。ザ・安モデルといった様子。</span></p>
<p><span><img alt="005.jpg" src="https://7mc.org/2025/01/13/005.jpg" width="600" height="450" class="mt-image-none" /></span></p>
<p><span>内容物。本体、保証書の他に使いやすそうなきしめんAtoCケーブルが付属している。</span></p>
<p><span>保証書と説明書は一応日本語でも書かれているが、シールか何かが張り付いて破れているあたりがXiaomiクオリティ。</span></p>
<p><span>　</span></p>
<h3>スマホと重ねて使うにはちょっと幅が厳しいがギリギリ許容範囲内</h3>
<p>サブで使っている10000mAhのモバイルバッテリー（幅68mm）がスマホと重ねて使うのにちょうどいい幅だったので、本品（幅<span>73mm）</span>も大して変わらないだろうと思っていたが、5mmの差は思っていたより大きかった。</p>
<p><img alt="006.jpg" src="https://7mc.org/2025/01/13/006.jpg" width="600" height="450" class="mt-image-none" /></p>
<p>比べてみた所、ぱっと見た感じでは大した違いはなさそうなのだが、実際に持ってみるとちょっと大きくてホールドしづらい。</p>
<p><img alt="010.jpg" src="https://7mc.org/2025/01/13/010.jpg" width="269" height="400" class="mt-image-none" /></p>
<p>68mmの方はスマホの横幅よりちょっと小さくて、重ねたときに背面がちょうどいい曲線になりホールドしやすいのだが、73mmになるとスマホとほぼ同じ幅になるためスマホの厚みが2倍+になったような感覚。</p>
<p>持てないことはないので慣れたら大丈夫そうだが、「思っているよりは一回り大きい」ということを理解したうえで買った方がいい（重量しか見てなった...）。</p>
<p>　</p>
<h3>TypeAポートの充電性能を確認してみる</h3>
<p>物は試しとTypeAケーブルでXiaomi 11T Proに接続してみると、驚いたことに「MI TURBO CHARGE」表記で充電が開始された。</p>
<p><img alt="011.jpg" src="https://7mc.org/2025/01/13/011.jpg" width="270" height="600" class="mt-image-none" /></p>
<p>MI TURBO CHARGEは一般的には30W以上の充電規格だが、<a href="https://7mc.org/2021/12/14/cheapest_xiaomi_33w_charger_on_aliexpress.html">Xiaomi非純正の33W充電器を検証した</a>ときは「QC 3.0 Class Bの27W」でもこの表記になった。</p>
<p>ただこのモバイルバッテリーは27Wも出ないはず...謎。</p>
<p><a href="https://hanpenblog.com/17042">こちらの記事</a>のMI TURBO CHARGE一覧表を見てもやはり最小は27Wからなのだが、</p>
<blockquote>
<p>Xiaomiのスマートフォンは、Mi 8 / Mi MIX 3まではQualcomm Quick Charge 3.0対応の18W ACアダプターが付属していました。</p>
</blockquote>
<p>との表記もあるので、もしかしたらQC3.0 18WでもMI TURBO CHARGE表記になるのかもしれない。これは知らなかった。</p>
<p><img alt="007.jpg" src="https://7mc.org/2025/01/13/007.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>USBチェッカーで測定してみたら確かに18Wで充電できている。</p>
<p><img alt="008.jpg" src="https://7mc.org/2025/01/13/008.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>充電モードも「QC3.0」と判定されているので、QC3.0 18Wで充電されていることは間違いなさそう。</p>
<p>ただ<a href="https://www.mi.com/jp/product/xiaomi-power-bank-10000mah-22w-lite/specs/?skupanel=1">公式サイトのスペック表</a>では充電規格は</p>
<ul>
<li>5V⎓3A</li>
<li>9V⎓2.23A</li>
<li>12V⎓1.67A</li>
<li>10V⎓2.25A</li>
</ul>
<p>のみでQC3.0 18Wの記載はない（数字的に上3つはUSB/PDで一番下がHuawei SCPだろう）。</p>
<p>まぁ今時の充電機器でQC3.0に対応していない筈がないので、スペック表に記載されていないだけだろうが。</p>
<p>　</p>
<h3>TypeCポートの充電性能を確認してみる</h3>
<p>次はTypeCケーブルでXiaomi 11T Proに接続してみたところ、「高速充電」表示になった。</p>
<p><img alt="012.jpg" src="https://7mc.org/2025/01/13/012.jpg" width="270" height="600" class="mt-image-none" /></p>
<p><a href="https://7mc.org/2021/12/14/cheapest_xiaomi_33w_charger_on_aliexpress.html">前回の検証でも</a>USB PD充電の時この表示になっていたため、TypeC接続時はUSB PDで20W充電されていると思われる。</p>
<p>残念ながらUSBチェッカーがTypeC接続時に反応（通電）せず確認できなかったため、代わりに</p>
<p>スマホ側で「電話」を起動して<strong>*#*#6485#*#*</strong>と入力し、<a href="https://xiaomiplanets.com/tip-zivotnost-baterie-v-xiaomi-telefone/">隠し画面</a>を表示することで充電中のバッテリー情報を確認してみた。</p>
<p><img alt="013.jpg" src="https://7mc.org/2025/01/13/013.jpg" width="270" height="371" class="mt-image-none" /></p>
<p><strong>MU_000: PD_PPS</strong> とあるように、USB PDのPPSで充電できていることが分かる。また、</p>
<p><strong>MB_04: -1763000</strong> から1763mAで充電されていることが分かる（この項目はバッテリーの消費電流量なので充電時はマイナス値になる）</p>
<p>先ほどの充電規格と照らし合わせるとおそらく「12V⎓1.67A」で充電されているものと思われる。</p>
<p>　</p>
<h3>2ポート同時充電してみる</h3>
<p>TypeCとTypeAの2ポート同時充電してみたところ、どちらもUSB 5V/3Aと思われる充電モードになった。</p>
<p>TypeAの方は5Vで充電モードはUnknown（普通のUSB充電）表記だった。</p>
<p><img alt="014.jpg" src="https://7mc.org/2025/01/13/014.jpg" width="600" height="452" class="mt-image-none" /></p>
<p>TypeCの方は</p>
<p><img alt="015.jpg" src="https://7mc.org/2025/01/13/015.jpg" width="270" height="363" class="mt-image-none" /></p>
<p><strong>MU_000: USB_DCP </strong>表記となり、こちらも素のUSB充電モード(5V/3A)で充電されていることが分かる。</p>
<p><a href="https://www.mi.com/jp/product/xiaomi-power-bank-10000mah-22w-lite/specs/?skupanel=1">公式サイトのスペック表</a>では「（3ポート）5V⎓3A」との表記だが、2ポートでも5V/3A充電されると思われる。</p>
<p>まぁ単一ポートでMAX 20Wの製品に複数ポートで急速充電を求めるのは酷なので、こんなもんでしょう。</p>
<p>　</p>
<h3>ということで、</h3>
<p>機能的には可もなく不可もなく。サイズ的にはちょっと大きいけど許容範囲内。</p>
<p>コスパを考えると十分に価値のある製品という感想。</p>
<p>Ankerと比べてサイズ的には不利になるので、コスパより快適性を求めるのであればAnker一択。</p>
<p>今回は「Xiaomiスマホを使っている」という点が大きくてこちらを選んだが、それがなければAnkerを選んでいただろう。</p>]]>
    </content>
</entry>

<entry>
    <title>[AWS] MariaDB+unixODBCでCONNECT接続時に文字化けする問題</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2024/08/12/aws_mariadb_and_unixodb_cconnect_strage_engine.html" />
    <id>tag:7mc.org,2024://2.381</id>

    <published>2024-08-12T05:32:54Z</published>
    <updated>2024-08-12T05:44:05Z</updated>

    <summary>前々回、前回の記事でMariaDBからOracleやSQL Serverのデータ...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="MySQL" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SQL Server" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p><a href="https://7mc.org/2024/07/22/aws_mariadb_connect_strage_engine_with_oracle.html">前々回</a>、<a href="https://7mc.org/2024/08/10/aws_mariadb_connect_strage_engine_with_sql_server.html">前回</a>の記事でMariaDBからOracleやSQL Serverのデータを取得するため、unixODBCとCONNECTストレージエンジンを使って環境を構築した。</p>
<p>一部動作が怪しい所はあるものの概ね問題なく動いているのだが、一つ困ったこととして「エラーメッセージが文字化けする」という問題がある。</p>
<p>　</p>
<h3>エラーメッセージ文字化け問題（Oracle編）</h3>
<p>Oracleのビューに対してCONNECTでCREATE TABLEし、そのテーブルに対して編集しようとした（つまりビューを編集しようとした）らこのようなエラーメッセージが出た。</p>
<pre>#HY000Got error 122 'Remote SQLExecDirect: [Oracle][ODBC][Ora]ORA-01732: ã\0081"ã\0081®ãƒ"ãƒ¥ãƒ¼ã\0081§ã\0081¯ãƒ‡ãƒ¼ã‚¿æ"\008Dä½œã\0081Œç„¡åŠ¹ã\0081§ã\0081™<br />ãƒ˜ãƒ«ãƒ--: https://docs.orac' from CONNECT</pre>
<p>↑ビューは編集できないのは分かるし、ORA-xxxxxの番号があるのでWeb検索すればエラー内容は理解できるんだけど、見事に文字化けしてる...。</p>
<p>まず調べてみた所、<a href="https://docs.oracle.com/cd/E16338_01/appdev.112/b56260/errors.htm">OracleのエラーメッセージはNLS_LANGに依存する</a>とのこと。</p>
<p>確かに<a href="https://7mc.org/2024/07/22/aws_mariadb_connect_strage_engine_with_oracle.html">前々回の記事</a>でSQL取得結果（日本語文字列）が「?」に文字化けしてしまうことから、環境変数に下記を設定した。</p>
<pre>NLS_LANG=JAPANESE_JAPAN.JA16SJISTILDE</pre>
<p>これによりエラーメッセージも日本語で表示されるようになったわけだ。</p>
<p>そこまではいいのだが、肝心の文字化けしてしまう原因については、どうやらUnixODBCが<a href="https://stackoverflow.com/questions/37141342/character-set-mismatch-on-linux-with-odbc-to-sql-server">コード変換時に誤ってISO-8859-1でエンコードしてしまっている</a>らしい。うーんポンコツ。困った。</p>]]>
        <![CDATA[<h3>エラーメッセージ文字化け問題（SQL Server編）</h3>
<p>SQL Server側でも同じ問題が出ている。</p>
<pre>#HY000Got error 174 'SQLDriverConnect: [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]ãƒ¦ãƒ¼ã‚¶ãƒ¼ 'user' ã\0081¯ãƒ­ã‚°ã‚¤ãƒ³ã\0081§ã\0081\008Dã\0081¾ã\0081›ã‚"ã\0081§ã\0081--ã\0081Ÿã€‚' from CONNECT</pre>
<p>↑ユーザーID/パスワードが間違っているときに出るエラーメッセージ。こちらはOracleと違ってエラー番号が無いので完全に意味不明。</p>
<pre>#HY000Got error 174 'SQLExecDirect: [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]­üïüÉ 'key' ØÑk<br />i\0007jË‡LBŠ~Y\0002' from CONNECT</pre>
<p>↑存在しないカラムをSELECTしようとした時のエラーメッセージ。こっちも見事に文字化けしている。</p>
<p>いろいろと調べてみると、SQL Serverについては間に「<a href="https://www.unixodbc.org/doc/FreeTDS.html">FreeTDS</a>」というツールを間に挟み、odbc.iniに</p>
<pre>client charset = UTF-8<br />server charset = CP1252</pre>
<p>のようにクライアント、サーバーそれぞれの文字コードを指定することで解決できるらしい。</p>
<p>が、このツールでSQL Server側の問題は解決したとしても、Oracle側の問題は解決できそうにない。</p>
<p>　</p>
<h3>逃げの一手</h3>
<p>さらに調べるも、文字コードのミスマッチを解消するのは難しいと判断。</p>
<p>（根本原因であるUnixODBCを自分で直してプルリクを出すぐらいの工数があれば話は別だが...）</p>
<p>仕方なく考え方を変えることに。</p>
<p>つまり「メッセージが日本語だから文字化けする」わけで、「エラーメッセージを英語で返すようにしてしまえばいい」のだ（ちょっと苦しいか...）</p>
<p>　</p>
<h3>SQL Serverの言語設定を英語にする</h3>
<p>幸いにもSQL Server側は<a href="https://stackoverflow.com/questions/949241/change-language-of-error-messages-in-sql-server-management-studio/68428900#68428900">接続文字列に<strong> Language=English</strong> を追加すればいい</a>、ということが分かった。</p>
<p>/etc/odbc.iniを開き、SQLServerのDSN定義に</p>
<pre>Language=English</pre>
<p>を追加した。</p>
<p>その他にも接続文字列に指定できるパラメータは<a href="https://learn.microsoft.com/ja-jp/sql/relational-databases/native-client/applications/using-connection-string-keywords-with-sql-server-native-client?view=sql-server-ver15#odbc-driver-connection-string-keywords">こちら</a>に記載がある。</p>
<p>記載した内容はMariaDBのサービスを再起動すれば反映される。</p>
<pre># sudo systemctl restart mariadb.service</pre>
<p>再度SQLを実行してみると、</p>
<pre>#HY000Got error 174 'SQLExecDirect: [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]Invalid column name 'aaaid'.' from CONNECT</pre>
<p>↑存在しないカラムをSELECTしようとした時のエラーメッセージ。英語になった。</p>
<pre>HY000Got error 174 'SQLDriverConnect: [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]ãƒ¦ãƒ¼ã‚¶ãƒ¼ 'user' ã\0081¯ãƒ­ã‚°ã‚¤ãƒ³ã\0081§ã\0081\008Dã\0081¾ã\0081›ã‚"ã\0081§ã\0081--ã\0081Ÿã€‚' from CONNECT</pre>
<p>↑ただ、ログインエラーだけは変わらなかった。</p>
<p>どうやら接続文字列で設定した内容は<strong>SQLExecDirect</strong>には効力はあるものの、<strong>SQLDriverConnect</strong>には影響しないようだ。</p>
<p>いろいろ試してみたがここの文字化けは解決できず。まぁ滅多に起きないエラーなので無視していいだろう。</p>
<p>　</p>
<h3>Oracleの言語設定を英語にする</h3>
<p>Oracleは先述のとおりNLS_LANGによってエラーメッセージの言語を設定しているとのことなので、</p>
<pre># systemctl edit mariadb.service</pre>
<p>を叩いて下記を追記して、</p>
<pre>[Service]<br />Environment=NLS_LANG=AMERICAN_AMERICA.JA16SJISTILDE</pre>
<p>下記コマンドを叩いてサービスを再起動する。</p>
<pre># systemctl restart mariadb.service</pre>
<p>これで「言語指定は英語」「文字セットは日本語(SJISチルダ)」という指定ができた。</p>
<p>データはSJISで取得しつつ、メッセージは英語で表示されるようになる。</p>
<pre>#HY000Got error 122 'Remote SQLExecDirect: [Oracle][ODBC][Ora]ORA-00971: missing SET keyword<br />Help: https://docs.oracle.com/error-help/db/ora-00971/' from CONNECT</pre>
<p>↑ビューを変更しようとしたときのエラーメッセージ。（出てくるエラーはちょっと違うけど）無事、英語にはなった。</p>
<p>　</p>
<h3>一旦は解決したが・・・</h3>
<p>とりあえずエラーメッセージを英語にすることで文字化けは回避できたが、根本的な解決にはなっていない。</p>
<p>例えばOracleやSQL Server側に「日本語のテーブル名」や「日本語のカラム名」があった場合、CONNECTでリンクしたテーブルはテーブル名やカラム名が文字化けしてしまい、SELECTしてもエラーになってしまう。</p>
<p>一応この問題にも「逃げの一手」はあって、「日本語名を含まないビューを別途作ってそれをCONNECTでリンクする」ことで回避は可能。</p>
<p>ただリンク先DBに（ビューを作るなどの）手を加える必要があるためイマイチ。現状の「逃げ」はちょっとモヤモヤするのが正直なところ。</p>
<p>UnixODBCのエンコード問題が根本原因だと思われるが、検証する余力がないため現状打つ手がない。誰か直してくれないかなぁ（他力本願）</p>]]>
    </content>
</entry>

<entry>
    <title>[AWS] MariaDBからSQL ServerにCONNECTエンジンでDBリンクを張る方法</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2024/08/10/aws_mariadb_connect_strage_engine_with_sql_server.html" />
    <id>tag:7mc.org,2024://2.380</id>

    <published>2024-08-10T00:55:02Z</published>
    <updated>2024-08-10T02:23:53Z</updated>

    <summary>前回の記事ではMariaDBから同一ネットワーク上にあるOracleにCONNE...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="MySQL" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SQL Server" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p><a href="https://7mc.org/2024/07/22/aws_mariadb_connect_strage_engine_with_oracle.html">前回の記事</a>ではMariaDBから同一ネットワーク上にあるOracleにCONNECTストレージエンジンを使って接続してみた。</p>
<p>今回はその続きで、MariaDBからSQL Serverにリンクしてみた。</p>
<p>　</p>
<h3>参考記事</h3>
<p>今回はこちらの記事を参考にした。</p>
<p><a href="https://www.cnblogs.com/abclife/p/16709031.html">【MySQL】MariaDB使用connect引擎直接访问SQLServer数据库 - abce - 博客园</a></p>
<p>使用するODBC Driver for SQL Serverのバージョンが違うことを除けば、ほぼこの手順のとおりで完了する。</p>
<p>その他の細かい設定などは<a href="https://7mc.org/2024/07/22/aws_mariadb_connect_strage_engine_with_oracle.html">前の記事</a>で実施済みなので割愛する。</p>]]>
        <![CDATA[<h3>SQL ServerのODBCドライバーをインストール</h3>
<p>ODBCドライバーのインストール方法はこちら。</p>
<p><a href="https://learn.microsoft.com/ja-jp/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-ver16&amp;tabs=redhat18-install%2Calpine17-install%2Cdebian8-install%2Credhat7-13-install%2Crhel7-offline#18">Microsoft ODBC Driver forSQL Serverをインストールする (Linux) - ODBC Driver for SQL Server | Microsoft Learn</a></p>
<pre>#RHEL 9<br />curl https://packages.microsoft.com/config/rhel/9/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo<br /><br />sudo yum remove unixODBC-utf16 unixODBC-utf16-devel #to avoid conflicts<br />sudo ACCEPT_EULA=Y yum install -y msodbcsql18<br /># optional: for bcp and sqlcmd<br />sudo ACCEPT_EULA=Y yum install -y mssql-tools18<br />echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' &gt;&gt; ~/.bashrc<br />source ~/.bashrc<br /># optional: for unixODBC development headers<br />sudo yum install -y unixODBC-devel</pre>
<p>unixODBCのインストールは<a href="https://7mc.org/2024/07/22/aws_mariadb_connect_strage_engine_with_oracle.html">前回の記事</a>で実施済みなのでパス。実質初めの一行と、<span>msodbcsql18、mssql-tools18のインストールだけ。</span></p>
<p><span>　</span></p>
<h3>/etc/odbcinst.ini にODBC設定を書き込む</h3>
<p>前回の記事ではファイルを直接編集したが、今回は参考記事のやり方で試してみる。</p>
<pre># sudo odbcinst -q -d -n "ODBC Driver 18 for SQL Server"<br />[ODBC Driver 18 for SQL Server]<br />Description=Microsoft ODBC Driver 18 for SQL Server<br />Driver=/opt/microsoft/msodbcsql18/lib64/libmsodbcsql-18.3.so.3.1<br />UsageCount=1</pre>
<p>このコマンドを叩くだけで /etc/ddbcinst.iniに書き込まれるらしい。便利。</p>
<p>　</p>
<h3>ドライバーの接続テスト</h3>
<pre># sudo /opt/mssql-tools18/bin/sqlcmd -S xxx.xxx.xxx.xxx -U user -P pass -d TestDB -Q 'select "Hello World"' <span style="color: #e03e2d;"><strong>-C</strong></span><br />-----------<br />Hello World<br />(1 rows affected)</pre>
<p>SQL ServerのODBCで無事接続できた。SQL ServerがTrusted_Connection=yesを必要とする場合は <span style="color: #e03e2d;"><strong>-C</strong></span> オプションを忘れずに。</p>
<p>　</p>
<h3>/etc/odbc.ini にDNS設定を書き込む</h3>
<p>こちらも前回の記事ではファイルを直接編集したが、今回は参考記事のやり方で試してみる。</p>
<pre># sudo vim /etc/MariaDB_odbc_data_source_for_MSSQL_template.ini</pre>
<p>下記内容でテンプレートファイルを新規作成する。</p>
<pre>[SQLServerDSN]<br />Driver=ODBC Driver 18 for SQL Server<br />Server=xxx.xxx.xxx.xxx<br />Port=1433<br />UID=user<br />PWD=pass<br />Database=TestDB<br />TrustServerCertificate=yes<br />Trace=Yes<br />TraceFile=/var/log/odbc_MSSQL.log</pre>
<p>下記コマンドでテンプレートファイルの内容をodbc.iniに書き込む</p>
<pre># sudo odbcinst -i -s -l -f MariaDB_odbc_data_source_for_MSSQL_template.ini</pre>
<p>　</p>
<h3>odbc.iniの接続テスト</h3>
<p>odbc.iniに設定した内容で接続テストをしてみる。</p>
<pre># sudo isql -v SQLServerDSN user pass<br />+---------------------------------------+<br />| Connected!                            |<br />|                                       |<br />| sql-statement                         |<br />| help [tablename]                      |<br />| quit                                  |<br />|                                       |<br />+---------------------------------------+<br />SQL&gt; select name from sys.databases;<br />+---------------------------------------------------------------------------------------------------------------------------------+<br />| name                                                                                                                            |<br />+---------------------------------------------------------------------------------------------------------------------------------+<br />| master                                                                                                                          |<br />| tempdb                                                                                                                          |<br />| model                                                                                                                           |<br />| msdb                                                                                                                            |<br />+---------------------------------------------------------------------------------------------------------------------------------+<br />SQLRowCount returns 0<br />4 rows fetched</pre>
<p>ログインもSQLの発行も問題なく実行できた。</p>
<p>　</p>
<h3>CREATE TABLEしてみる</h3>
<p>試しに下記内容でCREATE TABLEしてみた。</p>
<pre>CREATE TABLE Test_Table (<br />  id int not null,<br />  remark nvarchar(255) not null<br />) ENGINE=CONNECT <br />  DEFAULT CHARSET=utf8mb4 <br />  CONNECTION='DSN=SQLServerDSN;Database=TestDB;UID=user;PWD=pass' <br />  TABLE_TYPE='ODBC'</pre>
<p>CREATE TABLEは無条件で成功するのは同じとして、 <strong>SELECT * FROM Test_Table;</strong> で無事データを取得できた。</p>
<p>文字化けもなくいい感じ。</p>
<p>　</p>
<h3>カラム名に予約語が使われているとダメ</h3>
<p>一点だけ問題点があるとすれば、カラム名に「KEY」のような予約語が使われているとSELECT時にエラーになる。</p>
<p>予約語であったとしても、SQL Serverでは<strong>[KEY]</strong>、MariaDBは`KEY`と囲めば使用できるのだが、CONNECTエンジンはこういった記法を解釈できないらしい。SQL Server側で別名でビューを定義してそっちをCONNECTして回避するしかなさそう。</p>
<p>　</p>
<h3>とりあえず設定完了</h3>
<p>前回の記事でOracleが大変だっただけに、思ったよりはサクサク進んでよかった。</p>
<p>実はもう一つだけ問題が残っているので、次の記事で解決する予定・・・。</p>]]>
    </content>
</entry>

<entry>
    <title>[AWS] MariaDBからOracleにCONNECTエンジンでDBリンクを張る方法</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2024/07/22/aws_mariadb_connect_strage_engine_with_oracle.html" />
    <id>tag:7mc.org,2024://2.379</id>

    <published>2024-07-21T15:41:37Z</published>
    <updated>2024-08-12T05:55:10Z</updated>

    <summary>AWS EC2上に作成されたAmazon Linux 2023 + MariaD...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="MySQL" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p>AWS EC2上に作成されたAmazon Linux 2023 + MariaDB 10.5の環境から、同じネットワーク内にある他DBMSを参照する（OracleでいうところのDBLINK、SQL Serverでいうところのリンクサーバー）のが思ったより大変だったので備忘録として残しておく。</p>
<p>　</p>
<h3>FEDERATEDエンジンを当たるも空振り</h3>
<p>まず適当に「MariaDB DBLINK」などとWeb検索すると、<a href="https://qiita.com/okegawa/items/2f54750cba29ae4f7c38">こういう記事</a>が見つかった。</p>
<p><a href="https://qiita.com/okegawa/items/2f54750cba29ae4f7c38">mysql/mariadb外部表(DBLINK,FEDERATED)の利用方法 #MySQL8.0 - Qiita</a></p>
<p>詳しくはよくわからないが、</p>
<pre><span>MariaDB &gt; create table dummyTable (id int ,name varchar(255))</span><br /><span>             -&gt; ENGINE=FEDERATED</span><br /><span>             -&gt; default charset=utf8</span><br /><span>             -&gt; CONNECTION='mysql://xxxx:xxxx@xxxxx/xxxxxx/dummyTable';</span></pre>
<p><span>という書き方をすればDBLINKに相当することが実現できるらしい・・・？</span></p>
<p><span>が、何度やっても上手く行かない。というか「<strong>mysql://</strong>」スキーマにOracleのIPアドレスを入れたところで動く気がしない。</span></p>
<p><span>「ENGINE=FEDERATED」と書かれているとおり、これは「Federatedエンジン」を使用して外部テーブルにアクセスする仕組みのようだ。</span></p>]]>
        <![CDATA[<h3>ストレージエンジンの話</h3>
<p>MariaDBは様々な方式でデータを持つことができ、そこにアクセスするための仕組みとして「<a href="https://qiita.com/ishishow/items/280a9d049b8f7bcbc14a">ストレージエンジン</a>」を搭載している。</p>
<p>例えば「MariaDB」と聞いて一般的にイメージする、RDBMSとしてデータを持つ形式は「<span>InnoDB」ストレージエンジンが使われている。</span></p>
<p><span>他にもメモリ上にテーブルを保持する「Memory」や水平分散が可能な「Spider」など、様々なエンジンがある。</span></p>
<p><span><img alt="001.gif" src="https://7mc.org/2024/07/22/001.gif" width="750" height="485" class="mt-image-none" /></span></p>
<p><span><a href="https://qiita.com/ishishow/items/280a9d049b8f7bcbc14a">MySQLのストレージエンジンについて #MySQL - Qiita</a></span></p>
<p><span>その中でも「Federated」は、ネットワーク上にある他の<strong>MariaDB/MySQLに</strong>接続するためのエンジンであり、残念ながらOracleやSQL Server等の他DBMSには対応していないようだ。</span><a href="https://qiita.com/ishishow/items/280a9d049b8f7bcbc14a"><span></span></a></p>
<p>　</p>
<h3>CONNECTエンジンに舵を切る</h3>
<p>どうしたものかとさらに検索してみたところ、「<a href="https://mariadb.com/kb/en/connect/">CONNECT</a>」エンジンというものが求めているものらしい。</p>
<p><img alt="002.jpeg" src="https://7mc.org/2024/07/22/002.jpeg" width="625" height="481" class="mt-image-none" /></p>
<p><a href="https://hit.hateblo.jp/entry/mariadb/connect-storage-engine">CONNECT STORAGE ENGINEを利用した異なるDBMSへの透過的接続 - Database JUNKY</a></p>
<p>CONNECTは汎用性の高いODBC経由で接続できるため、大抵のDBMSには対応しているとのこと。これだ。</p>
<p>（ちなみに、FEDERATEDはMySQL/MariaDB双方に存在するが、CONNECTはMariaDB独自の模様）</p>
<p>早速<a href="https://mariadb.com/kb/en/installing-the-connect-storage-engine/">インストール手順</a>に従って <strong>sudo yum install MariaDB-connect-engine</strong> を叩いたが見つからず。</p>
<p><a href="https://mariadb.com/kb/en/mariadb-package-repository-setup-and-usage/">公式のガイド</a>に従ってパッケージリポジトリを追加しようとしたがAmazon Linux 2023が見つからず。</p>
<p>あれー、と思って <strong>sudo yum list --available mariadb*</strong> と叩いたら、</p>
<pre>Available Packages<br />mariadb-connector-c-devel.x86_64   3.1.13-1.amzn2023.0.3     amazonlinux<br />mariadb-connector-c-test.x86_64    3.1.13-1.amzn2023.0.3     amazonlinux<br /><span style="color: #e03e2d;">mariadb105-connect-engine.x86_64</span>   3:10.5.23-1.amzn2023.0.1  amazonlinux<br />mariadb105-devel.x86_64            3:10.5.23-1.amzn2023.0.1  amazonlinux<br />mariadb105-oqgraph-engine.x86_64   3:10.5.23-1.amzn2023.0.1  amazonlinux<br />mariadb105-pam.x86_64              3:10.5.23-1.amzn2023.0.1  amazonlinux<br />mariadb105-rocksdb-engine.x86_64   3:10.5.23-1.amzn2023.0.1  amazonlinux<br />mariadb105-sphinx-engine.x86_64    3:10.5.23-1.amzn2023.0.1  amazonlinux<br />mariadb105-test.x86_64             3:10.5.23-1.amzn2023.0.1  amazonlinux</pre>
<p>名前が違っていたというオチ。無事インストール完了。</p>
<p>そのままMariaDBにCONNECTエンジンを登録する。</p>
<pre><strong>mariadb -u username -p</strong><br />Enter password:<br />MariaDB [(none)]&gt; <strong>INSTALL SONAME 'ha_connect.so';</strong><br />Query OK, 0 rows affected (0.005 sec)<br />MariaDB [(none)]&gt; <strong>show engines;</strong><br />+--------------------+---------+-------------------------------------------------------------------------------------------------+--------------+------+------------+<br />| Engine             | Support | Comment                                                                                         | Transactions | XA   | Savepoints |<br />+--------------------+---------+-------------------------------------------------------------------------------------------------+--------------+------+------------+<br />| Aria               | YES     | Crash-safe tables with MyISAM heritage. Used for internal temporary tables and privilege tables | NO           | NO   | NO         |<br />| MRG_MyISAM         | YES     | Collection of identical MyISAM tables                                                           | NO           | NO   | NO         |<br />| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables                                       | NO           | NO   | NO         |<br />| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears)                                  | NO           | NO   | NO         |<br />| MyISAM             | YES     | Non-transactional engine with good performance and small data footprint                         | NO           | NO   | NO         |<br />| CSV                | YES     | Stores tables as CSV files                                                                      | NO           | NO   | NO         |<br />| ARCHIVE            | YES     | gzip-compresses tables for a low storage footprint                                              | NO           | NO   | NO         |<br />| FEDERATED          | YES     | Allows one to access tables on other MariaDB servers, supports transactions and more            | YES          | NO   | YES        |<br />| PERFORMANCE_SCHEMA | YES     | Performance Schema                                                                              | NO           | NO   | NO         |<br />| InnoDB             | DEFAULT | Supports transactions, row-level locking, foreign keys and encryption for tables                | YES          | YES  | YES        |<br />| SEQUENCE           | YES     | Generated tables filled with sequential values                                                  | YES          | NO   | YES        |<br />| CONNECT            | YES     | Management of External Data (SQL/NOSQL/MED), including Rest query results                       | NO           | NO   | NO         |<br />+--------------------+---------+-------------------------------------------------------------------------------------------------+--------------+------+------------+</pre>
<p>↑一番下に「CONNECT」が追加された。ひとまずインストールは完了。</p>
<p>　</p>
<h3>Oracleへの接続設定</h3>
<p>Oracleへの接続方法を書いてくれているブログが見つかったので、ここを参考に進めていく。</p>
<p><a href="https://serge.frezefond.com/2013/12/mariadb-connect-storage-engine-access-to-oracle-11gr2/">MariaDB CONNECT Storage Engine access to Oracle 11GR2 - Serge Frezefond 's blog</a></p>
<p>　</p>
<h3>Oracle Instant Client(ODBCドライバ)のインストール</h3>
<p>OracleのODBCドライバである<a href="https://www.oracle.com/database/technologies/instant-client/downloads.html">Oracle Instant Client</a>をダウンロードする。</p>
<p>上記リンクから「Instant Client for Linux x86-64」をクリックし、</p>
<ul>
<li><span>Basic Package (ZIP)</span></li>
<li><span>SDK Package (ZIP)</span></li>
<li><span>ODBC Package (ZIP)</span></li>
</ul>
<p>をwgetしてunzipする。場所は適当に<strong> /opt/oracle/instantclient_23_4</strong> とかに。</p>
<p>場所が決まったら .bash_profile に下記2行を追加しておく。</p>
<pre>CLIENT_HOME=/opt/oracle/instantclient_23_4 ; export CLIENT_HOME<br />LD_LIBRARY_PATH=$CLIENT_HOME:$LD_LIBRARY_PATH ; export LD_LIBRARY_PATH</pre>
<p>　</p>
<h3>unixODBCのインストール</h3>
<p>次に <strong>sudo yum install unixODBC unixODBC-devel</strong> を叩く。</p>
<p>インストール後、 <strong>odbcinst -j</strong> を叩くと各種情報が表示される。</p>
<pre>unixODBC 2.3.9<br />DRIVERS............: <strong>/etc/odbcinst.ini ←この2ファイルを編集する</strong><br />SYSTEM DATA SOURCES: <strong>/etc/odbc.ini     ←この2ファイルを編集する</strong><br />FILE DATA SOURCES..: /etc/ODBCDataSources<br />USER DATA SOURCES..: /home/ec2-user/.odbc.ini<br />SQLULEN Size.......: 8<br />SQLLEN Size........: 8<br />SQLSETPOSIROW Size.: 8</pre>
<p>　</p>
<h3>ODBC設定</h3>
<p>まず <strong>/etc/odbcinst.ini</strong> を開き、末尾に下記を追記する。</p>
<pre>[ORACLE_DRIVER]<br />Description     = Oracle ODBC driver<br />Driver          = /opt/oracle/instantclient_23_4/libsqora.so.23.1</pre>
<p>次に <strong>/etc/odbc.ini</strong> を開き、Oracleの接続情報を入力する。</p>
<pre>[ORACLE_DNS]<br />Driver       = ORACLE_DRIVER<br />ServerName   = xxx.xxx.xx.xxx:xxxx/orcl<br />UserName = orclUser<br />Password = orclPass</pre>
<p>　</p>
<h3>接続テスト</h3>
<p><strong>isql ORACLE_DNS orclUser orclPass -v</strong> コマンドを叩き、OracleにODBC接続できることを確認する。</p>
<pre>+---------------------------------------+<br />| Connected!                            |<br />|                                       |<br />| sql-statement                         |<br />| help [tablename]                      |<br />| quit                                  |<br />|                                       |<br />+---------------------------------------+<br /><br />SQL&gt; quit</pre>
<p>　</p>
<h3>CREATE TABLEしてみるも上手く行かない</h3>
<p>ODBCの設定も上手く行ったようなので、MariaDB上でCREATE TABLEしてみる。</p>
<pre>CREATE TABLE TEST_TABLE<br />  ENGINE=CONNECT, <br />  TABLE_TYPE=ODBC,<br />  TABNAME='ORA.TEST_TABLE'<br />  CONNECTION='Driver=ORACLE_DRIVER;DSN=ORACLE_DNS;UID=OrclUser;PWD=OrclPass'</pre>
<p>結果はエラー。</p>
<pre> #HY000 Unsupported table type ODBC </pre>
<p>「TABLE TYPE」で指定できるオプションは<a href="https://mariadb.com/kb/en/connect-table-types-overview/">公式サイト</a>で紹介されている。勿論「ODBC」も含まれているのに...。</p>
<p>　</p>
<h3>TABLE_TYPE=ODBC が認識されない問題で沼る</h3>
<p>ODBC接続できると聞いてCONNECTエンジンをインストールしたのに、肝心の「ODBC」を認識してくれないとはこれ如何に。</p>
<p><a href="https://www.google.com/search?q=%22Unsupported+table+type+ODBC%22">"Unsupported table type ODBC"で検索</a>してもごく僅かの情報しかない。</p>
<p>こちらの<a href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=814944">バグチケット</a>(結構古い)によると、CONNECTエンジンの本体である<strong>ha_connect.so</strong>のコンパイル時にODBCが有効になっていないとダメらしい。</p>
<pre>Solution there was that odbc needs to be compiled in (ODBC_SUPPORT precompiler option).<br /><br />connect.odbc                             w5 [ skipped ]  No ODBC support<br />connect.odbc_oracle                      w5 [ skipped ]  No ODBC support<br />spider/bg.direct_update_part             w4 [ pass ]     83<br />connect.odbc_postgresql                  w5 [ skipped ]  No ODBC support<br />connect.odbc_sqlite3                     w5 [ skipped ]  No ODBC support<br />connect.odbc_sqlite3_grant               w5 [ skipped ]  No ODBC support<br />connect.odbc_xls                         w5 [ skipped ]  No ODBC support</pre>
<p><a href="https://blog.weghos.com/mariadb/MariaDB/storage/connect/ha_connect.cc.html">ソースを確認</a>すると、TABLE_TYPEを判別した結果が<strong>TAB_NIY</strong>（定義なし）の場合に"Unsupported table type %s"が出力されることが分かった。</p>
<pre>5475   ttp= GetTypeID(topt-&gt;type);<br />～～～～<br />5532        // Check table type<br />5533        if (ttp == TAB_UNDEF) {<br />5534            topt-&gt;type = (src) ? "MYSQL" : (tab) ? "PROXY" : "DOS";<br />5535            ttp = GetTypeID(topt-&gt;type);<br />5536            sprintf(g-&gt;Message, "No table_type. Was set to %s", topt-&gt;type);<br />5537            push_warning(thd, Sql_condition::WARN_LEVEL_WARN, 0, g-&gt;Message);<br />5538        } else if (ttp == <strong>TAB_NIY</strong>) {<br />5539            <strong>sprintf(g-&gt;Message, "Unsupported table type %s", topt-&gt;type);</strong><br />5540            rc = HA_ERR_INTERNAL_ERROR;<br />5541            goto err;<br />5542        } // endif ttp</pre>
<p>本来なら、5475行目で呼び出しているGetTypeID()関数の中で<strong>TAB_ODBC</strong>を判定するのだが、</p>
<pre>136 #if defined(ODBC_SUPPORT)<br />137                  : (!stricmp(type, "ODBC"))  ? <strong>TAB_ODBC</strong><br />138 #endif</pre>
<p><strong>ODBC_SUPPORT</strong>が有効でない場合に、<strong>TAB_ODBC</strong>判定部分がコメントアウトされてしまい<strong>TAB_NIY</strong>と判定されるようだ。</p>
<p>CMakeLists.txtを見る限り、cmake時にCONNECT_WITH_ODBCオプションがONになっていればODBC_SUPPORTは有効になるはずだが...</p>
<pre> ./storage/connect/CMakeLists.txt<br />187 OPTION(<strong>CONNECT_WITH_ODBC </strong>"Compile CONNECT storage engine with ODBC support" <strong>ON</strong>)<br />188<br />189 IF(CONNECT_WITH_ODBC)<br />190   if(UNIX)<br /><br />250     IF(ODBC_OK)<br />251       INCLUDE_DIRECTORIES(${ODBC_INCLUDE_DIR})<br />252       <strong>add_definitions(-DODBC_SUPPORT)</strong><br />253       SET(CONNECT_SOURCES ${CONNECT_SOURCES} tabodbc.cpp odbconn.cpp)<br />254     ELSE()<br />255       SET(ODBC_LIBRARY "")<br />256     ENDIF()</pre>
<p>何らかの理由でCONNECT_WITH_ODBCオプションがOFFでコンパイルされたものが同梱されているのだろうか。</p>
<p>試しに<a href="https://github.com/MariaDB/server">GitHub</a>からソースを持ってきて自分ビでルドしてみたものの、持ってきたソースのバージョンがよくなかったのか、ha_connect.coとMariaDBのバージョンが合わないと怒られてしまった（後述）。</p>
<p>　</p>
<h3>自前でビルドするのは諦める</h3>
<p>初心に戻り<a href="https://serge.frezefond.com/2013/12/mariadb-connect-storage-engine-access-to-oracle-11gr2/">参考記事</a>のとおり進めることに。</p>
<p><a href="https://serge.frezefond.com/2013/12/mariadb-connect-storage-engine-access-to-oracle-11gr2/">参考記事</a>ではrpmファイルから新しい<strong>ha_connect.so</strong>ファイルを抽出していたので、これを真似ることにする。</p>
<p><a href="https://dev.classmethod.jp/articles/install-mysql-client-to-amazon-linux-2023/">Amazon Linux 2023はFedoraベースではあるものの、リポジトリはRHELを使うといい</a>との情報があったので、公式サイトから<a href="https://mariadb.org/download/?t=repo-config&amp;d=Red+Hat+Enterprise+Linux+8&amp;v=10.5&amp;r_m=yamagata-university">RHEL用のリポジトリ</a>を確認。</p>
<p>rpmファイルをwgetし、rpmファイルから抽出した<strong>ha_connect.so</strong>ファイルをMariaDBのpluginフォルダにぶち込む。</p>
<pre>wget https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/yum/10.5/rhel/9Server/x86_64/rpms/MariaDB-connect-engine-10.5.23-1.el9.x86_64.rpm<br />rpm2cpio ./MariaDB-connect-engine-10.5.23-1.el9.x86_64.rpm | cpio --extract  --make-directories<br /><br />sudo cp -p /home/temp/usr/lib64/mysql/plugin/ha_connect.so /usr/lib64/mariadb/plugin/<br />sudo chown root:root /usr/lib64/mariadb/plugin/ha_connect.so</pre>
<p>あとはMariaDBにログインして<strong>ha_connect.so</strong>を再インストールする（pluginフォルダに入れただけでは差し替わらないので注意）。</p>
<pre>mysql -u user -p<br />MariaDB [(none)]&gt; UNINSTALL SONAME 'ha_connect';<br />Query OK, 0 rows affected (0.002 sec)<br /><br />MariaDB [(none)]&gt; INSTALL SONAME 'ha_connect.so';<br />Query OK, 0 rows affected (0.010 sec)</pre>
<p>ちなみに、バージョンが合わないときはこんな感じで怒られる。</p>
<pre>MariaDB [(none)]&gt; INSTALL SONAME 'ha_connect';<br />ERROR 1126 (HY000): Can't open shared library 'ha_connect.so' (errno: 8, API version for STORAGE ENGINE plugin CONNECT not supported by this version of the server)</pre>
<p><strong>ha_connect.so</strong>の差し替えが完了したので再度CREATE TABLEを実行するとエラーメッセージが変わった。</p>
<pre>#HY000 SQLDriverConnect: [unixODBC][Driver Manager]Can't open lib '/opt/oracle/instantclient_23_4/libsqora.so.23.1' : file not found</pre>
<p>無事ODBCは有効になったようだが、次は何だ。</p>
<p>　</p>
<h3>OracleのODBCドライバを認識しない問題</h3>
<p>実はこのエラーも<a href="https://serge.frezefond.com/2013/12/mariadb-connect-storage-engine-access-to-oracle-11gr2/">参考記事</a>で言及されているのだが、肝心の対応方法が書かれていない。</p>
<p>「<span>mysqlのサービスが動いているLinuxユーザー"mysql"</span><span>にもOracle ODBC driver (libsqora.so.12.1)へのアクセスが必要」とのことだが、Linuxのmysqlユーザーはnologinユーザーであり、.bash_profileなんて無い。</span></p>
<p>試しに /etc/environment にも下記を書いてみたが効果なし。</p>
<pre>CLIENT_HOME=/opt/oracle/instantclient_23_4 ; export CLIENT_HOME<br />LD_LIBRARY_PATH=$CLIENT_HOME:$LD_LIBRARY_PATH ; export LD_LIBRARY_PATH</pre>
<p>実は<a href="https://mariadb.com/ja/resources/blog/connecting-to-oracle-from-mariadb-enterprise-server-using-spider/">こっちの公式Web記事</a>に答えが書いてあった。</p>
<pre>sudo vi /etc/ld.so.conf.d/mariadb.conf</pre>
<p>で新たなconfファイルを作成し、oracle instant clientのパスを追加。</p>
<pre>/opt/oralce/instantclient_23_4/</pre>
<p>そしてldconfigを叩くことで変更内容を反映。無事ライブラリパスを通すことができた。</p>
<pre>sudo /sbin/ldconfig</pre>
<p>　</p>
<h3>ようやくCREATE TABLEが通った</h3>
<p>あらためて下記SQLを流すとTEST_TABLEが作成された。</p>
<pre>CREATE TABLE TEST_TABLE<br />  ENGINE=CONNECT, <br />  TABLE_TYPE=ODBC,<br />  TABNAME='ORA.TEST_TABLE'<br />  CONNECTION='Driver=ORACLE_DRIVER;DSN=ORACLE_DNS;UID=OrclUser;PWD=OrclPass'</pre>
<p>作成されたTEST_TABLEを開くと、OracleにあるORA.TEST_TABLEテーブルの内容が表示された...が、日本語(マルチバイト文字)が「?」に文字化けしている。</p>
<p>　</p>
<h3>文字化けを解消する</h3>
<p>Oracle側で下記SQLを実行した結果、Oracle側の文字コードはSJIS（JA16SJISTILDE）であることが分かった。</p>
<pre>SELECT * FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER = 'NLS_CHARACTERSET';</pre>
<p>MariaDB側の文字コードがlatin1だったので<a href="https://itechblog.hatenablog.com/entry/2020/12/27/2020-12-27-093959/">utf8に変えてみた</a>が効果なし。</p>
<pre>export NLS_LANG=JAPANESE_JAPAN.JA16SJISTILDE<br />export NLS_LANG=JAPANESE_JAPAN.JA16SJISTILDE<br />export NLS_CHARACTERSET=JA16SJISTILDE<br />export NLS_CHARACTERSET=Japanese_Japan.JA16SJISTILDE</pre>
<p>など叩いてみるも、現ログイン中ユーザーにしか影響がないため意味なし。</p>
<p>何となくMariaDBというよりはunixODBC→Oracle Instant Clinet→Oracle接続時の文字コード指定が間違っている感じ。</p>
<p>CONNECTエンジンというかunixODBCに「Oracle接続時の文字コードはこれだよ」と指定してやらないといけないのだがやり方が分からない。</p>
<p>しばらくネットの海を漂っていると、<a href="https://mariadb.com/kb/en/connect-odbc-table-type-accessing-tables-from-another-dbms/#non-ascii-character-sets-with-oracle">公式Webに専用の項目がある</a>ことに気が付く。</p>
<pre>sudo systemctl edit mariadb.service</pre>
<p>を叩いて</p>
<pre>[Service]<br />Environment=NLS_LANG=JAPANESE_JAPAN.JA16SJISTILDE</pre>
<p>を追記して保存する。最後に</p>
<pre>sudo systemctl restart mariadb.service</pre>
<p>を叩いてMariaDBのサービスを再起動すると日本語が文字化けしなくなった！これで大体は完了。</p>
<p>　</p>
<h3>未解決問題あり</h3>
<p>最後に、いくつか未解決の問題が残っている。</p>
<p>Oracleの日付型カラムを含むテーブルをCONNECTでCREATE TABLEすると、MariaDBではTimestamp型でテーブルが作成されるようだ。そしてそのTimestamp型を含むテーブルをSELELCTするとMariaDBがクラッシュする。</p>
<p>Oracle側のテーブル定義を見てみると型は <strong>TIMESTAMP(6)</strong> と定義されている。<a href="https://docs.oracle.com/cd/E16338_01/server.112/b56307/ch4datetime.htm#i1006050">(6)は秒の小数桁数（デフォルト値）</a>。</p>
<p>MariaDB側に作成されたカラムは Timestamp型 で、これは少数桁を持たない。おそらくこのミスマッチが原因だろう。</p>
<p>MariaDBのログを見るとsignal 11ということでバグを踏んでるっぽいのだが判断できず。</p>
<pre>[ERROR] mysqld got signal 11 ;<br />Sorry, we probably made a mistake, and this is a bug.</pre>
<p>更に検証してみると、文字列の取得結果に絵文字や「<strong>𠮷</strong>」などの4バイト文字が入るとクラッシュする。</p>
<p>おそらく特定の型でデータのサイズ長を誤って扱っており、アクセス違反を起こしているのだろう。将来的なバージョンアップで修正されることを期待するしかない。</p>
<p>できる事といえばバリデーションの強化と、Timestamp型を使用しないようCREATE TABLE時に自分で型を指定することぐらいか。</p>
<p>　</p>
<h3>CREATE TABLE時に型を指定する方法</h3>
<p>例えば以下のようにCREATE TABLEすると、</p>
<pre>CREATE TABLE ORA_TEST_TABLE<br />    ENGINE=CONNECT<br />    TABLE_TYPE=ODBC<br />    TABNAME='ORA.TEST_TABLE'<br />    CONNECTION='DSN=ORACLE_DNS;UID=orclUser;PWD=orclPass';</pre>
<p>作成されるテーブルの各カラムの型はCONNECTエンジンの裁量で決められる。</p>
<p>例えばOracle側のORA.TEST_TABLEに日付型の項目があった場合、MariaDB側はTimestamp型で作成されてしまう。</p>
<p>（他の型は大体いい感じに作成されるが、整数値NUMBER(6,0)までもが実直にdecimal(6,0)になるので場合によってはIntegerとかに置き換えてもよさそう）</p>
<p>これを避けるためには、CREATE TABLE時に一つずつ項目名と型を指定する。</p>
<pre>CREATE TABLE ORA_TEST_TABLE (<br />    TEST_ID int NOT NULL,<br />    TEST_TIME1 datetime,<br />    TEST_TIME2 datetime,<br />    TEST_TEXT varchar(32)<br />)   ENGINE=CONNECT<br />    TABLE_TYPE=ODBC<br />    TABNAME='ORA.TEST_TABLE'<br />    CONNECTION='DSN=ORACLE_DNS;UID=orclUser;PWD=orclPass';</pre>
<p>これでTimestamp型を避けてDatetime型でテーブルを作成することができる。</p>
<p>一つずつ項目を書くのは手間なので、まず項目を指定せずCREATE TABLEし、<strong>SHOW CREATE TABLE ORA_TEST_TABLE;</strong> を実行して自動生成されたCREATE TABLE文を確認、気に入らない箇所を手直ししてからDROP TABLE→再度CREATE TABLEすると効率がいい。</p>
<p>ちなみに↑の方法で<strong>timestamp</strong>型ではなく<strong>timestamp(6)</strong>で定義してみたがやはりクラッシュしたので、CONNECTエンジンはOracleのTIMESTAMPデータの扱いに難があるのだろう。</p>
<p>というか、OracleのTIMESTAMP型はタイムゾーンを持たないただの日時情報なんだからMariaDB側はdatetime型で十分なはず。なんでtimestamp型にしてしまうんだろう...。</p>
<p>　</p>
<h3>日付型の制約</h3>
<p>他にも問題というかデータ型の制約がある。CONNECTエンジンは<a href="https://mariadb.com/kb/en/connect-data-types">こちらに書かれたデータ型</a>にしか対応しておらず、MariaDB（InnoDBエンジン）が対応しているデータ型よりかなり制限される。</p>
<p>特に厳しいのが日付型。内部的には4バイトの符号付きIntegerで、<span>0＝1970/1/1 12:00:00 amを起点に 1901/12/13 20:45:52 ～ 2038/1/18 19:14:07のデータしか保持できない。 </span></p>
<blockquote>
<p><span>CONNECT handles dates from </span><strong>13 December 1901, 20:45:52</strong><span> to </span><strong>18 January 2038, 19:14:07</strong><span>.<br /></span><a href="https://mariadb.com/kb/en/connect-data-types/">CONNECT Data Types - MariaDB Knowledge Base</a></p>
</blockquote>
<p>もしリンク先のテーブルがこれを超える値だった場合、SELECTで取得される値はオーバフロー/アンダーフローした結果となる。</p>
<p>例えば元のデータが 3999/12/31 00:00:00 とすると、このデータをCONNECTエンジンで取得すると 1970/1/1  9:00:00 となる。</p>
<p>これは結構厄介で、気づかないうちに意図しない日付になってしまう可能性がある。</p>
<p>対策としては、リンク先のDBで（ビューを作るなどして）日付を文字列としてVARCHAR型で保持、CONNECT後に<a href="https://mariadb.com/kb/en/date_format/">DATE_FORMAT関数</a>などを使って日付型に戻す方法が<a href="https://mariadb.com/kb/en/connect-data-types/#handling-dates-that-are-out-of-the-range-of-supported-connect-dates">紹介されている</a>。</p>
<p>もしくは、リンク先のビューで大きすぎる値は最大値(<span>2038/1/18 19:14:07)に、小さすぎる値は最小値(1901/12/13 20:45:52)に置き換えてSELECTするようにしておけばオーバフロー/アンダーフローしなくなる。</span></p>
<p>　</p>
<h3>その他のTips</h3>
<p>CREATE TABLE時、<strong>TABNAME='ORA.TEST_TABLE'</strong>で指定したテーブルに存在しない項目を指定するとSELECT時にエラーになる。</p>
<pre>ORA-00904: "AAAAA": invalid identifier</pre>
<p>↑適当に「AAAAA」という項目を指定してCREATE TABLEし、SELECTしてみた結果。</p>
<p>CREATE TABLE時はエラーの有無をチェックせず処理成功してしまうので、テーブル作成後に一度SELECTしてエラーが出ないかどうかの確認は必須。</p>
<p>　</p>
<p>ということで、いくつか問題はあるものの無事接続はできた。</p>
<p>他にも実用上の問題や制約が出てきそうではあるが、一応使えるようになったので一旦はこれで運用してみる。</p>]]>
    </content>
</entry>

<entry>
    <title>ETC車載機の調子が悪かったのでヒューズを交換した</title>
    <link rel="alternate" type="text/html" href="https://7mc.org/2024/07/03/replace_fuses_in_etc_of_a_car.html" />
    <id>tag:7mc.org,2024://2.378</id>

    <published>2024-07-03T13:32:45Z</published>
    <updated>2024-08-10T02:19:37Z</updated>

    <summary>今の車を中古で買ったときにサービスで付けてもらったETC車載器の調子が悪い。 初...</summary>
    <author>
        <name>takeru</name>
        <uri>http://7mc.org/</uri>
    </author>
    
        <category term="車関係" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="ja" xml:base="https://7mc.org/">
        <![CDATA[<p>今の車を中古で買ったときにサービスで付けてもらったETC車載器の調子が悪い。</p>
<p>初めはETCゲートを通過できたりできなかったり不安定だったが、段々と反応すらしなくなり、遂に電源が入らなくなった。</p>
<p>元々販売店で要らなくなった物をオマケで付けてくれたもので、当然ながら中古品。</p>
<p>古いから仕方がないかなぁと思っていたけど、調べてみたら<a href="https://moss.ti-da.net/e9655566.html">ヒューズ切れ</a>の可能性があるらしい。</p>]]>
        <![CDATA[<h3>早速、開腹してみる</h3>
<p>オーディオ付け替えやシガーソケット増設などで<span>インテリアパネルの開腹は経験済み。</span></p>
<p><span><img alt="001.jpg" src="https://7mc.org/2024/07/03/001.jpg" width="500" height="452" class="mt-image-none" /></span></p>
<p><span>オーディオハーネスなどゴチャゴチャした配線をかき分け、ついにETC車載器のヒューズボックスを発見。</span></p>
<p>二股に分かれていて、それぞれ1Aの管ヒューズが入っていた。</p>
<p><img alt="002.jpg" src="https://7mc.org/2024/07/03/002.jpg" width="500" height="372" class="mt-image-none" /></p>
<p>オートバックスで同型のヒューズを買ってきて両方とも交換したら完了。思ったより簡単でよかった。</p>
<p>　</p>
<h3>二股に分かれている理由</h3>
<p>調べるまで知らなかったのだが、ETC車載器は常時電源とACC電源の2電源が必要らしい。</p>
<p><a href="https://www.amon.jp/diy/index.php?diy_id=71&amp;mode=contents&amp;page=2"><img alt="003.jpg" src="https://7mc.org/2024/07/03/003.jpg" width="680" height="300" class="mt-image-none" /></a></p>
<p>それぞれ「ヒューズボックスからの平ヒューズ」＆「配線途中の管ヒューズ」の二段仕込みになっていて、今回切れていたのは管ヒューズだけだった。</p>
<p>もし平ヒューズも切れていたら、ヒューズボックスを覗き込んでアレコレしないといけなかっただろう。</p>
<p>交換が簡単な管ヒューズだけで済んだのは不幸中の幸いだったのかも。</p>
<p>　</p>
<h3>追記</h3>
<p>しばらくは順調に使えていたものの、また「電源は入るがETCゲートを通っても反応しない」状態になってしまった。</p>
<p>電源が入るだけまだマシではあるが使えなければ意味がない。</p>
<p>ヒューズ交換が下手くそで接触が悪いのか、やはり本体が死んでいるのか...</p>]]>
    </content>
</entry>

</feed>
