変奏現実

パソコンやMMORPGのことなどを思いつくまま・・・記載されている会社名・製品名・システム名などは、各社の商標、または登録商標です。

この画面は、簡易表示です

インターネット

12を使ってみた

学習目的で利用。

ダウンロード先巨大なZIPファイル

インストレーション・ガイド必読書。Windows版の方が多分楽

引用: Oracle Technology Network

起動順

  • リスナーを起動する。
    • lsnrctl start
  • データベースを起動する。
    • sqlplus / as sysdba
    • startup
  • プラガブル・データベースを開く。
    • show pdbs で状態を見て、MOUNTEDだったら
      • alter pluggable database {PDB名} open; する
  • プラガブル・データベースに移動するなら。
    • alter session set container= {PDB名} ;
  • でも毎回 プラガブル・データベースを開くのが面倒いので
    • ALTER PLUGGABLE DATABASE {PDB名} SAVE STATE; する

そんな訳でtnsnames.oraに プラガブル・データベース への接続設定が必要。

  • SRV_PDB=
    • (DESCRIPTION =
      • (ADDRESS =
        • (PROTOCOL = TCP)
        • (HOST = {サーバ名})
        • (PORT = 1521)
      • )
      • (CONNECT_DATA =
        • (SERVER = DEDICATED)
        • (SERVICE_NAME = {PDB名})
      • )
    • )

でも、A5の 直接接続ならサービス名( つまり{PDB名} )で接続するように指定すればいいだけかな?

終了順(適当)

  • リスナーを停止
    • lsnrctl stop
  • データベースを停止する。
    • shutdown

でも、コマンドは面倒なので

  • サービス自動起動化のためコマンド使用可にする
    • vi /etc/oratab
      • $ORACLE_SID:$ORACLE_HOME:N の NをYに変える
  • サービスを作成
  • CentOS6はhttps://docs.oracle.com/cd/E57425_01/121/UNXAR/strt_stp.htmを参照。CentOS7は以下。
    • vi /etc/sysconfig/db01.oracledb
      • oracle ユーザの.bash_profileから設定をコピー
        • ORACLE_BASE、ORACLE_HOME、ORACLE_SID
    • vi /usr/lib/systemd/system/db01@lsnrctl.service
      • [Unit]
        • Description=Oracle12c Net Listener
        • After=network.target
      • [Service]
        • Type=forking
        • EnvironmentFile=/etc/sysconfig/db01.oracledb
        • ExecStart=/u01/app/oracle/product/12.1.0/dbhome_1/bin/lsnrctl start
        • ExecStop=/u01/app/oracle/product/12.1.0/dbhome_1/bin/lsnrctl stop
        • User=oracle
      • [Install]
        • WantedBy=multi-user.target
    • vi /usr/lib/systemd/system/db01@oracledb.service
      • [Unit]
        • Description=Oracle12c Database service
        • After=network.target lsnrctl.service
      • [Service]
        • Type=forking
        • EnvironmentFile=/etc/sysconfig/db01.oracledb
        • ExecStart=/u01/app/oracle/product/12.1.0/dbhome_1/bin/dbstart $ORACLE_HOME
        • ExecStop=/u01/app/oracle/product/12.1.0/dbhome_1/bin/dbshut $ORACLE_HOME
        • User=oracle
      • [Install]
        • WantedBy=multi-user.target
  • 作ったサービスを登録
    • systemctl daemon-reload
    • systemctl enable db01@lsnrctl db01@oracledb

再起動すると、 https://サーバー:5500/em も開けた。

ユーザ作成

ところがメニューはコンテナデータベース( CDB )のまま。CDBではユーザが作れないのでメニューからプラガブル・データベース(PDB)へ切り替えたいが、そんな方法は無いらしい。

ググってみると、PDB用のemが作れる様だ

  • sqlplus / as sysdba から、
  • PDBに遷移
    • ALTER SESSION SET CONTAINER={PDB名};
  • PDBにem用のポートを設定
    • exec dbms_xdb_config.sethttpsport(5504);
  • 要確認
    • SELECT c.name,c.open_mode,e.port FROM v$pdbs c, xdb.xdb$cdbports e WHERE c.con_id = e.pdb (+);

NAMEOPEN_MODEPORT
PDB1READ WRITE5504
PDB2MOUNTED
PDB$SEEDREAD ONLY
  • お約束のファイアーウォール設定
    • firewall-cmd – -permanent –zone=public – -add-port=5504/tcp
    • firewall-cmd – -reload
  • https://サーバー:5504/em のメニューにPDB名が出るようになった。
やっと「表領域」が見えた!

これで、【セキュリティ】⇒【ユーザ】画面で[ユーザの作成]のウィザードがまともに使えるようになる。ロールはザッくりな感じで。

  • CONNECT ※接続
  • DBM ※Create Table とか
  • Unlimited Tablespace ※INSERTとか

こんなSQLを流してみると、

DROP PUBLIC SYNONYM SAMPLE1;
CREATE TABLE AAAAAA.SAMPLE1 (
ID      VARCHAR(10) not null,
NAME    VARCHAR(30),
ADDRESS VARCHAR(255),
MEMO    VARCHAR(255)
);
SELECT * from AAAAAA.SAMPLE1;
CREATE PUBLIC SYNONYM SAMPLE1 FOR AAAAAA.SAMPLE1;
SELECT * FROM SAMPLE1;
INSERT INTO  SAMPLE1 VALUES('a','b','c','');
INSERT INTO  SAMPLE1 VALUES('A','B','C','');
UPDATE SAMPLE1 SET ID='aAA',NAME='bBB',ADDRESS='cCC',MEMO='***###' WHERE ID='a';
SELECT * FROM SAMPLE1;
DELETE SAMPLE1 WHERE ID='b';
SELECT * FROM SAMPLE1;

シノニムがめんどくさい。

19cの方がインストーラが日本語表示してくれるようだが、
設定方法が悪かったのか、インスト時にデータベースも作ろうとすると
5500ポートが使用中とかで失敗してしまう。
それでプログラムだけインストして、
binのdbcaでデータベースを作るとemが起動しない。
select dbms_xdb_config.getHttpsPort() from dual; が

DBMS_XDB_CONFIG.GETHTTPSPORT()
0

なので、
exec dbms_xdb_config.sethttpsport(5500);
pdb1の分も作ってみる。
ALTER SESSION SET CONTAINER=pdb1;
exec dbms_xdb_config.sethttpsport(5504);
SELECT c.name,c.open_mode,e.port FROM v$pdbs c, xdb.xdb$cdbports e WHERE c.con_id = e.pdb (+);では見えないが、
select dbms_xdb_config.getHttpsPort() from dual;で設定を確認。

firewall-cmd –add-port=5500/tcp –permanent
firewall-cmd –add-port=5504/tcp –permanent
firewall-cmd –reload
見えなかったら rebootしてみるといいかも。
あれ?メニューがPerformanceだけ。
マニュアル読んで、全部やりなおしかな?



ブログについて

WordPressについては・・・

段々便利になって来ているという感じがしてます。

実際、記事の上下移動というのは結構頻度が多いし、引用と本文の差し替えもまま発生します。

ソース用の SyntaxHighlighter Evolved はイマイチ感のままですが、以前と比べると、&になっちゃうことは少なくなったと思います。

1文字だけサイズを変えたいとか、そう云うのがかなり面倒になって不便を感じてます。

左揃えの表 禁止したい
で回り込みを場合は

無駄に<br clear=”all”>なHTMLブロックを作ってみたり・・・

ま、ちゃんとした方法はあるんでしょうけど、そういう細かいことを気にしだしたら、使えなくなってしまいますよね。(大笑

なんとなく、ボクには、扱いにくいので、

内輪専用WORDを作ってる様な風に思えます。

MS-WORDも扱いにくいと思っているので、

扱いにくいワードプロセッサを2つも使っていくのはシンドイなぁ~そう思います。

あ、3つかな?4つかもしれない!!!

ということは…

あんまり変わんないのか(爆笑



【CentOS7】XRDP

あるインストーラがX-Windowで動いちゃうのでメンドクサイと思いながら

yum -y groupinstall “KDE Plasma Workspaces”

しました。

でも、調べ物はWindowsでやっているので、2つのキーボードとマウスを使い分けるのが、やはり面倒。

とは云うものの以前にvncやspiceとか使ってみた感じでは…

CentOS側で事前にX-Windowsが動かしておいて
コッソリ覗き見している感じだったから、
事前準備が全て整っている必要があり
起動までが面倒だった。※サーバーを動きっぱなしにするのは必然。

当然、いくつも繋ぎっぱなしにしようとすると、
ポートの割振りが必要だったり、パッケージのSSLの扱いも豆に変わてたりしてて、暫く使わないと、パッケージの自動アップデートで動作が安定せず 右往左往してしまい、 電源入れっぱなしと云うこともあり次第に使わなくなっていた。

でも今では Windowsのリモートディスクトップ からLinuxのX-Windowに繋いでしまうパッケージXRDPが出ていた。これは楽そうだ。

  • いくつでも接続できそう。※数枚なら並行利用可能。
  • コマンドのコピペが楽なキャラクターモードで接続したいなら、ログインの初期設定はキャラクターモードでもOK。
  • CentOS側はxrdpのサービスを常駐させて置くだけいい。
  • yum install xrdp tigervnc-server と3389ポート開放だけ。
    • 色は事前に/etc/xrdp/xrdp.iniのmax_bppを32から24に変えた方がいいらしい。

但し、同じユーザで複数ログインしても、画面コピーになるので無駄。
※でも、やり様はあるのかもしれない。

無論CentOS側の負担は半端ないけどね。(笑

Cleron G3900にはチョット厳しい様だ。

初期設定はUSだけど
・[アプリケーション]⇒[設定]⇒[システム設定]⇒[国・言語]⇒[ロケール]で日本・日本語に変えて再起動。
・IBus-kkcがインスト済みでタスクバーに[JA]か[あ]表示があるハズ。
無ければ [アプリケーション]⇒[設定]⇒ [入力メソッドのセレクター]でIBusを有効にすれば、Windowsキー+スペースでかな漢字変換をON/OFFできる。
・ターミナルは [アプリケーション]⇒[システム] の中。
・画面の解像度は [アプリケーション]⇒[設定]⇒[システム設定]でスクロールバーを下げていくと[ハードウェア]が出てくるので[ディスプレイとモニタ]でDisplay Configurationを選び画面右のスクリーンの絵中の4つの矢印が描かれたアイコンをクリックすると使える解像度から選べる。

ここまで羅列すれば困らないかなぁ~(不慣れスギ

あ、そうそう、Windowsのリモートディスクトップを閉じてもログアウトしないから、ちゃんとログアウトした方がいいかもしれない。うっかりシャットダウンを選ぶと「30秒後にその様」になります。※キャンセル可。



postgresqlでハマる

postgresqlを普通にyumでインストすると9.2.xなので

本家のRPMを追加して11.xをインストしてみた。

すると、phpPgAdminからログインできなくなった。

どうやら、pg_hba.confに

local  all   all   peer

があると、 su – postgres  以外の接続を嫌うご様子。でも・・・

local  template1 postgres trust

を手前に付けておけばOK。※でも非常に不安~

無事ログインできた?
おや?
白い画面?

このバージョンの PostgreSQL はサポートしていません。バージョン 以上にアップグレードしてください。

ドコにあるんだ!と思ったら、5.6は対応しているらしい。
yumは5.1なので、公式からzipをDLし、/usr/share ※/root下はダメだった。に解凍し、URLを繋ぎ直してみると、

Configuration error: Copy conf/config.inc.php-dist to conf/config.inc.php and edit appropriately.

yum じゃないから設定からはじめないとイケナいが、でもコピるだけ。

ログインが許可されませんでした。

フリダシに戻った気がしたが、

$conf[‘extra_login_security’] = false;

を忘れていただけだったと思ったけど甘かった。
何かクリックするとログインに戻されてしまう。
詰めが甘い?
よーくみると・・・左のツリーメニューに

読み込み中のエラーです。 database.php?subject=database=%3A5432%3Aallow&action=tree&database=postgres(200: OK)

ぐぐってみると、PHPのエラーを全て無視させればOKらしい。

結果: 効果無し。

PHPのログからはロクな情報が得られなかったが、
postgresqlのログファイルに親切な見解が書かれていたので
参考にしながら
pg_hba.confを少しづつ修正して得られた正解は・・・

host all all ::1/128 trust

md5にするとダメなのが困りもの。※trust: パスワード無視

local all all peer

ハマった時のためにコレは残しておいた方が良さそう。

他はコメントアウト!!!

結論: やっぱりユーザはちゃんと作った方が良さそう。



OpenAPI q(゚д゚ )↓sage↓

元はSwaggerというREST系のWebサービスの定義ファイルのフォーマット。

概ね、V2.xが Swagger で、V3.xがOpenAPIな感じ。

このフォーマットからServerやClientのソースを作成する便利なNodeJSのパッケージがあるけどOpenAPIはNodeJSのServerが未対応。

どれもnpmでインストする際に

 メンテナンスが3年近くの途切れてます

と警告文が出るので予想は付いていた。

定義ファイルを読んだ時点で文法エラーになる。そこを突破できたものも、

 OpenAPIは未対応です

とログを吐き、続けてバババーーーーとエラーを吐く。

Visual Studio Codeも、文字に色付けしたり、文法チェックしてくれる拡張機能はあるものの、Serverのたたき台のソースは作ってくれない。

Swagger Editorで書きながら気軽に動作確認もできるのが売りだったと思ってたけど、最近は動作確認なんかすっ飛ばすのが普通なのかもしれない。

動作を確認せずにコードするなら、URLを1つで済むGraphQlの方が無難な気がする。※検索しかできないけどね(笑

ブラウザとNodeJSのサービスでこんな感じかな?と思ったら、Swgger Editorでドキュメントだけ作っちゃうのかもしれない。

そんな訳で、もうOpenAPIは使わない方が良さげな感じがしてきた。



【Windows 10】build.1903

アップグレードしてみた。

久々に出てきた【今すぐアップデート】ボタン
「最も安全な・・・」と強調されると、どういった意味で「最も」なのかが知りたくなる
アプリはチェック対象外らしい
ダウンロードとインストールで1時間くらい
再起動後、無事終了
一応BUILDが上がっている

見えないところで色々変わってる。

しかし、一番気になるのはCドライブの空き容量が40GBとかなり減ってしまったこと。いつなら、Cドライブの復元ポイントを削除すれば、9GBもあったので、結構戻るのだが今回は削除してもさっぱり増えた感じがしない。

というのも、Windows.oldフォルダの容量が異常に大きかったのだ。数百Mバイトになることはよくあったが、今回は24Gバイトと特盛である。

中身を見てみるとWindowsやユーザのフォルダがほぼそのまんま入っている。C:\ユーザのフォルダ を見ると色々と手が入れているのが判る。

しかもマイグレーションのゴミまで残っている。RDV GRAPHICS SERVICEという怪しい名前のアカウントが勝手にできていた。リモートデスクトップを使うとできてしまうらしい。Windows10から7へダウングレードしようとしたら、このアカウントが邪魔で失敗した人もいるようだ。

邪魔だったら、 Control userpasswords2 で消せるっぽいが、出てこなかったのでフォルダだけなのかな?

何じゃコリャ?

Cドライブに Windows10Upgrade があったが

Eドライブにも\Windows10Upgradeがありゴミが残っていた。

C:\ユーザの下が48GBにもなっていた。いつものユーザ分が36GBもあったからアップデートのせいじゃ無いのかもしれない。でも、何となく、適当にバックアップを取ったら、クリーンインストールしちゃった方がよさそうだね。

だが、そう簡単にはMSががが・・・

予測終了時間:48時間超!

この後に消すのも大変なのでコピーじゃなくて移動に変更。

そして・・・

大丈夫かな・・・

諦めた。ユーザーだけコピってツールで削除することにした。

ううう やっぱりデカイw

ps.今日は仕事場のPCが凄く重いなぁと思ったので、 「ゴミ箱を空にする」 を実行すると「削除の準備」が始まりましたので慌てて中止!暫く待って中を覗くと何GBもの大量のファイルが中で詰まっていたのに気が付きました。「ダウンロード」から「普通に削除した」と思われる何かの巨大なISOイメージとか、大量のイミフな名前のログファイルを発見しました。そんなにいっぱいあったら32ビット版のWindowsのSuperFetch君がHDDをつかんで離さなくなっていたようです。一気に空にできなかったら、100ファイルぐらいづつシフトキーを押しながら少しづつ取り除けば何とかなります。

※ 32ビット版のWindows を使っているなら、「ゴミ箱」を作業フォルダに使ってると大変な目に遭う可能性が高いですね。

さて、先日の1903へのアップグレードはまだ まだ 待った方が良さそうです。

①skypeアカウントのプロフィールの画像が外れていたので再設定しました。

②マイドキュメントの下に置いてあった巨大な仮想マシンなどの開発環境などがどこかに消えてしまった可哀そうな人もいたという情報も見かけました。

いずれも、アップグレードによって、アプリの設定が壊れたか、所定のフォルダにファイルが入っていない状態になった様です。

全てのアプリの設定が壊れた訳では無く、アップグレータが不穏な動きをしてしまうことがあります。な感じがしますので、 アップグレー ト直後の再起動時に強制的にプロセスをキルってるか、ファイルをフラッシュしてない様な・・・

もっとも、ファイル自体はバックアップの巨大なUserの中を探せば見つかるかもしれませんので、残してあればなんとか復旧できそうですが・・・(削除済

いつかはパーフェクトな1903が出るんでしょうけど、DropBoxにバックアップしてクリーンインストールした方が手っ取り速いんじゃないかなと思います。

そんな状況を知ってか知らずか?WindowsStoreからPython3.7がインストールできるようになった様です。でもnode.jsのパッケージのインストに欲しいのは Python2.xと.Net V2.xと旧版のC++コンパイラだったりするので、ボクには何の役にも立ちませんPython3をアンスコしやすくなった点は高評価。(終了



【windows10】build 1809

200G分のファイルが消えた疑惑で自動アップデートは停止中らしい今回のアップデート。
多分、原因はデスクトップ。
当初は、「なんちゃってプリエンティブなWindows」なので、身勝手なフォーカス移動は事故の元。
暫くは、デスクトップもエクスプローラもノンプリエンティブだったけど、自信が出てきたらしく、今ではちゃんとマルチスレッドっぽい操作が可能になっている。
しかし、ちょっと調子が悪いとデスクトップを勝手に再描画してしまい白アイコンで埋まってしまうのはWindows10も同じこと。
SSDを使っていることが災いし、激重いアップデートが後ろで勝手に自動アップデートを走っているのに気づかずに
デスクトップでコンテンツ・メニューを開いて「シフト+Deleteキー」で強制削除してる最中に、
開いていたであろうエクスプローラの「ドキュメント」にフォーカスが動いてしまったのだろう。(南無南無
ボクは消すはずだったデスクトップのZIPファイルの下にあったフォルダを強制削除してしまったけどね。(泣き泣き
※ファイル名のみ表示にしていたPCだったので「新しいフォルダ」と「新しいフォルダ.zip」の表記が共に「新しいフォルダ」だったから消えるまで気が付かなかった。(泣き泣き
※よ~く見ていれば「ファイル」か「フォルダ」かちゃんと区別できたはず。(泣き泣き
※で・でも、き・消えたのは「たったの5GBさ」(泣き泣き
では、アップデートでのUIの違いはどうだろう?
微妙かな?

正確には左は1809にアップデート中。
もう、ナウい「コンピュータの管理」や「コントロールパネル」のショートカットを探すのは飽きたので、
エクスプローラのPCアイコンを右クリックで了。
PM10追記
米Microsoftは9日(現地時間)、3日より配信開始したWindows 10 October 2018 Updateのインストールによりファイルが消失する原因が判明したと発表した。本日よりWindows Insiderコミュニティを更新し、October 2018 Updateの再リリースに向けて作業を継続する。
この現象は「Known Folder Redirection(KFR)」機能を過去に有効にしたことがあり、リダイレクト先に移動するさいに、オリジナルファイルが移動されず、古いフォルダに取り残された場合に発生する。
だそうだ。
 大半のユーザーであれば移行が終わるまで待つだろうが、何らかの理由で中断したり、完全に移行されなかったりすると、移行されなかったオリジナルはデフォルトのフォルダに残されたままになる。
否、移行自体は知らない内に「バックグラウンド」で処理されているので、「運よく使ってなかった」ダケである。
とりあえず、アップデートが何かあったら、自動的にKFRをOFFにしてもらわないと、危なっかしい様だ。
しかし、それでは「バックグラウンドで知らない内にアップデートが完了する」間はいつのまにかKFRがOFFになってしまうので、何某かのトラブルを引き起こすかもしれない。
それでも、大量のファイルが消えるよりはマシかな・・・?
ま、ボクの場合は操作ミスで終了。(泣き




top