當使用MySQL或其他完全基於服務器的RDBMS系統,而不是SQLite的,你不會有你的應用程序創建一個數據庫文件。相反,數據庫存儲在服務器正在運行的MySQL實例中。
技術上講,有與存儲在MySQL數據目錄表相關的文件,但他們的位置是不相關的應用程序,而事實上甚至可能沒有你的常規shell用戶帳戶可讀。通過使用客戶機/服務器RDBMS,而不是基於文件的一個類似的SQLite,您可以有效地委派全部責任(*)與數據庫存儲到RDBMS,從應用程序中解耦數據存儲。
如果你有一個客戶端連接到主機的MySQL服務器時,你會看到列出的Rails應用程序數據庫
# Connect from the command line
$ mysql -usomeusername -p
# Execute MySQL commands
mysql> SHOW DATABASES;
將輸出類似:
+--------------------+
| Database |
+--------------------+
| information_schema |
| demo |
| demo_development |
| demo_test |
| mysql |
| test |
+--------------------+
7 rows in set (0.13 sec)
(*)注 - 我指的是數據模型存儲,而不是您的應用程序可能使用的任何其他基於文件的存儲,這些存儲由Rails和您的應用程序代碼管理。
一旦我第二行(節目數據庫)我得到「忽略查詢到其他數據庫」的結果,而不是你的輸出..任何想法,爲什麼? – jay 2012-03-25 19:51:36
請參閱[本文](http://forums.mysql.com/read.php?10,2325,146615#msg-146615)您的命令行是否正確,尤其是'-usomeusername'部分?這實際上是'-u'和'someusername'拼在一起。 – 2012-03-25 20:02:02