我正在尝试在全新的OS X 10.7安装上安装rvm,mysql和rails。它们都是单独正确安装的,但我似乎无法让它们一起工作。
当我尝试命令rake db:create
时,出现以下错误:
db/test.sqlite3 already exists
db/test.sqlite3 already exists
rake aborted!
uninitialized constant Mysql::Error
Tasks: TOP => db:create
(See full trace by running task with --trace)
我使用正确的说明安装了mysql gem。我把它添加到〜/ .bash_profile:
export DYLD_LIBRARY_PATH="/usr/local/mysql/lib:$DYLD_LIBRARY_PATH"
我做了这个命令:
env ARCHFLAGS="-arch x86_64" sudo gem install mysql -v='2.8.1' -- --with-mysql-dir=/usr/local/mysql --with-mysql-lib=/usr/local/mysql/lib --with-mysql-include=/usr/local/mysql/include --with-mysql-config=/usr/local/mysql/bin/mysql_config
当我gem list
时,我可以看到安装了mysql gem的2.8.1版本。我现在有点想法,有什么建议吗?感谢。
database.yml中:
development:
adapter: mysql
encoding: utf8
reconnect: false
database: terra_development
pool: 5
username: root
password: root
socket: /tmp/mysql.sock
答案 0 :(得分:1)
感谢您的投入,我设法解决了问题。问题是rails无法使用提供的凭据与服务器连接。因为某些原因,没有任何MySQL用户,甚至没有root
用户。我运行了这个命令:
/usr/local/mysql/bin/mysqladmin -u root password "root"
创建了root用户,让我连接到服务器并修复问题!
答案 1 :(得分:0)
创建测试数据库时出现sqlite错误。您显示了database.yml的开发部分,因此database.yml的测试部分指定了sqlite,或者您没有指定测试数据库。