一括してテーブル等を削除したいことがあるのだが、どうやらワイルドカード(*など)で指定することは不可能っぽい。PL/SQLで一括DROP可能であるらしいが・・・。
問題がなければ、下記にて所有するオブジェクト全て削除するのでスッキリする。
SQL> DROP USER user_name CASCADE;
system領域等に間違ってオブジェクトを作成してしまったりすると最悪です。
一括してテーブル等を削除したいことがあるのだが、どうやらワイルドカード(*など)で指定することは不可能っぽい。PL/SQLで一括DROP可能であるらしいが・・・。
問題がなければ、下記にて所有するオブジェクト全て削除するのでスッキリする。
SQL> DROP USER user_name CASCADE;
system領域等に間違ってオブジェクトを作成してしまったりすると最悪です。
■schema.yml からのデータベース生成
$ php symfony doctrine:build-db
■schema.yml からのモデルクラス生成
$ php symfony doctrine:build-model
■schema.yml からのオブジェクト生成
$ php symfony doctrine:build --all
■フィクスチャファイルのデータロード
$ php symfony doctrine:data-load
何せ10年振り位にOracleを触る。完全に忘れてます。以前は8iでしたから。頭の中はMySQLの概念でいっぱいいっぱいです。
まずはインストールを済ませて、SQLPlusで接続です。
SQL> conn system/xxxxxx
ユーザを作ります。
SQL> create user username identified by passwd
間違ったら以下。
SQL> alter user username identified by passwd2
削除する場合。アディオス。
SQL> drop user username;
新しく作成したユーザで接続。
SQL> conn username/passwd
おっと、エラー!! 権限が足らないとのこと。
ORA-01045: user USERNAME lacks CREATE SESSION privilege; logon denied
接続権限とリソース権限の付与。
SQL> grant connect to username; 権限付与が成功しました。 SQL> grant resource to username; 権限付与が成功しました。
①理論(アイデア)→②分析→③システム実装→④蓄積→⑤マイニング→①へ こららをサイクルで回していかないとね。どれか欠けても厳しい。
phpでPDOを使用するときに出たエラー。
Warning: PDO::__construct(): [2002] No such file or directory (trying to connect via unix:///var/mysql/mysql.sock) in /Users/xxxx/・・・/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection.php on line 470
読んでの如く、パスに mysql.sock が無いというエラー。
php.ini の設定だろうという事で下記のように変更。
MySQLのインストールは自分で行った為、下記のパスに存在していた。
わからない場合は、my.cnf にmysql.sockのロケーションが設定されているようだ。
;pdo_mysql.default_socket=/var/mysql/mysql.sock ↓ pdo_mysql.default_socket=/tmp/mysql.sock
php.ini を変更したので、Webサーバを再起動して解決。
過去、開発においてテーブル定義はER図によって管理してきた。下記がこれまでの開発ワークフローとなる。
ER図作成
↓
CREATE文( SQL)生成
↓
テーブルスキーマ生成
よって実テーブルから、 schema.yml を生成したい。
そこでまず、databases.yml にてDB接続設定を行う。
設定が正しく行われた場合 doctrine:build-schema コマンドを呼び出す。
$ php symfony doctrine:build-schema
これによって、schema.yml ファイルは config/doctrine/ ディレクトリの中に生成される。これを元に modelクラス をビルドすることとなる。
Windowsでtelnet通信もしくは、ssh通信を行うのであれば、やはり定番はTeratermである。
Macの場合は特に迷いなくターミナルを使用する。普通にターミナルを立ち上げて、telnetコマンドを打てば良い。またsshコマンドも問題ない。
ちなみに、sshコマンドの場合は、/home/ユーザ名 配下に .ssh/秘密鍵 を配置して、下記コマンドを打ち込めばログイン可能だ。
$ ssh サーバ名 -l ログインユーザ名 -i .ssh/秘密鍵
尚、秘密鍵は下記パーミッションでないと怒られる。
Permissions 0644 for '.ssh/秘密鍵名' are too open. It is recommended that your private key files are NOT accessible by others. This private key will be ignored. bad permissions: ignore key: .ssh/秘密鍵名 Permission denied (publickey,gssapi-with-mic).
下記コマンドにてパーミッションを変更するべし。
$ chmod 600 .ssh/秘密鍵名
仕事がソフトウェア開発系なので、主に下記のツールを仕事で使用している。
今後Macユーザになるのであれば、Windowsで動作する下記ツールが必要となってくる。
テキストエディタ
Eclipse (開発)
Teraterm (通信系)
MSOffice (Excel, Word, MSProject 等)
Adobe Web Premium (Webデザイン等)
但し、未だMacを使い慣れない自分は、Mac版の有償ソフトの購入には至っていない。
基本的に私はWindowsユーザである。手持ちのWindowsXPのPCのスペックも購入してから既に5年ほど経過している。最近ちょっとストレスを感じるようになってきた。
実は、昨年勢いで購入したMacMini がある。どうしてもMacを使い慣れない為に使用を断念し埃を被っていた。さらにモニタとキーボードが存在しないMacMini (無駄がないメリット)が、やはり仇となって使用しなくなっていた。いちいちモニタやキーボード繋げるのが面倒で。
だが今回思い立って、再度Mac利用を復活させようと思った。
ということで、徒然と気付いたことを書いていこうと思う。
Redmineインストール時にハマった件。
■Rubyダウンロード
wget http://rubyforge.org/frs/download.php/71096/ruby-enterprise-1.8.7-2010.02.tar.gz tar -xvzf ruby-enterprise-1.8.7-2010.02.tar.gz
■Rubyインストール
./ruby-enterprise-1.8.7-2010.02/install
■Rubyインストール後の、Redmine設定時にエラー発生!!
$rake generate_session_store rake/rdoctask is deprecated. Use rdoc/task instead (in RDoc 2.4.2+) WARNING: 'task :t, arg, :needs => [deps]' is deprecated. Please use 'task :t, [args] => [deps]' instead.
Rubyのライブラリの依存関係らしい。
gem → 1.4.2 rake-0.9.0 → 0.8.7 rack-1.3.0 → 1.0.1
■gemのアップデート
gem update --system 1.4.2
■rakeのアンインストール
$gem uninstall rake in addition to the gem? [Yn] y Removing rake You have requested to uninstall the gem: rake-0.9.0 Successfully uninstalled rake-0.9.0
■rakeのインストール
$gem install rake -v=0.8.7 Fetching: rake-0.8.7.gem (100%) Successfully installed rake-0.8.7 1 gem installed Installing ri documentation for rake-0.8.7... Installing RDoc documentation for rake-0.8.7...
上手く行った。
$rake generate_session_store (in /var/www/redmine)