MySQLでテーブルを指定してDUMP


テーブルのDUMPをすべく、mysqldumpコマンドを実行したところ下記のエラーが発生。

mysqldump -u DB_USER -p DB_NAME DB_TABLE_01 DB_TABLE_02 > mysql_dump.sql

mysqldump: Got error: 2002: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) when trying to connect

どうやら、CPI の共用レンタルサーバー「シェアードプラン」では、ホストを指定して実行しないとダメらしい。

ということで、ローカルホストの指定を追加して実行したら無事成功。

mysqldump -h 127.0.0.1 -u DB_USER -p DB_NAME DB_TABLE_01 DB_TABLE_02 > mysql_dump.sql

 


【jQuery】ページ内リンク(スクロール)


baseタグで相対パスの URI が指定されたサイトで、ページ内リンクを貼りたかったのですが

<base href="http://ooo.oo">

<a href="#id">ページ内リンク</a>

上記のように aタグで行うと、base で指定されたURL「http://ooo.oo/#id」にアクセスしてしまいます。
そこで、jQuery のスクロール機能を使い実装しました。

 

■ jQuery

<script type="text/javascript">
function scrollAttribute(attr){
    var p = $(attr).offset().top;
    $('html,body').animate({scrollTop:p}, 'slow');
}
</script>

 

■ HTML

<a href="#id" onClick="scrollAttribute('#id');return false;"></a>

<div id="id">
リンクさせたい箇所
</div>

aタグ側の「href=”#id”」は指定する必要がないため「href=””」などと空にしても良いですが、リンク先として表示されるようにしています。(ブラウザ依存)

引数で属性値を渡せるようにしていますので、「#id」や「.class」など、ID名でもクラス名でも動くようになっています。

 


【Tera Term】鍵認証方式でのSSH自動ログインマクロ


CPI のレンタルサーバーで公開鍵と秘密鍵を持ちいた鍵認証方式での SSH 自動ログインマクロを作ったので残しておきます。

(鍵認証を使わないSSH自動ログインマクロは、以前書いた記事「【Tera Term】SSH自動ログインマクロ」をご覧ください。)

 

下記の内容を「ホスト名.ttl」などとして保存します。
「ttl」ファイルが、Tera Term に関連付けされていればダブルクリックするだけで自動ログインできるようになります。

username = 'アカウント名'
hostname = 'IPアドレス'
userkeyfile = 'C:\Tool\TeraTerm\秘密鍵のファイル名'
portnum = 'ポート番号'

msg = hostname
strconcat msg ':'
strconcat msg portnum
strconcat msg ' /ssh /2 /auth=publickey /user='
strconcat msg username
strconcat msg ' /keyfile='
strconcat msg userkeyfile

connect msg

settitle 'タイトル(ホスト名など)'

3行目のファイル名は、パスフレーズを保存するファイル名です。
お好みに合わせて書き換えてください。
初回ログイン時に、自動でそのファイル名のファイルが作成されます。

3行目と4行目のファイルパスについては、ご自分の環境に合わせて書き換えてください。

このときの注意点としまして、ファイルパスに「半角スペース」が入らないようにしてください。
当初「TeraTerm」というフォルダ名に半角スペースを用いて「Tera Term」としていたところ

SSH2秘密鍵の読み込みに失敗しました
No such file or directory

というエラーが発生し、しばらく原因が分からず右往左往していました。
最終的にフォルダ名から半角スペースを削除し、「TeraTerm」としたところ正常に動作するようになりました。