Problem z rake db:create

Witam

Szukalem po necie rozwiazania niby jest ale nie dziala cos , bardzo was prosze o pomoc rece mi opadaja

mam Snow Leopard 10.6 , 32-bity , rails 2.3.5 , mysql 5.5

mam cos takiego

macbook-pro-damian-kaek:trening kalek$ rake db:create
(in /Users/kalek/Rails/trening)
Couldn’t create database for {“encoding”=>“utf8”, “username”=>“root”, “adapter”=>“mysql”, “database”=>“trening_development”, “password”=>nil}, charset: utf8, collation: utf8_unicode_ci (if you set the charset manually, make sure you have a matching collation)

MOJE wersje:
Last login: Fri Jan 22 00:04:58 on ttys001
macbook-pro-damian-kaek:~ kalek$ ruby -v
ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0]
macbook-pro-damian-kaek:~ kalek$ rails -v
Rails 2.3.5
macbook-pro-damian-kaek:~ kalek$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.5.1-m2 MySQL Community Server (GPL)

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

mysql>

Prosze o pomoc

demon hula ?
z uprawnieniami wszystko ok ?

konto mysql-owego roota bez hasla?

mysql dziala bez problemu , wpisujac w konsoli mysql -u root wchodze bez problemu , zastanawiam sie czy to kurde nie przez Snow leoparda ,
kupilem nowego macbooka pro i mam problem , wczesniej mialem Leoparda zwykelgo i mi smigalo a teraz problemy cos czuje ze bede musial zainstalowac od nowa
system , macie jakies pomysly pomocy

Daj zamiast nil w password pusty string czyli “”. Może pomoże.

Hey dzieki ale juz nie wytrzymalem i zrobilem wymazanie dysku i od nowa czystego Leoparda , mam nadzieje ze uda sie wszystko
mam pytanie czy jest ktos na forum kto ma Snow Leoparda 32-bit i mu wszystko ladnie chodzi jesli tak to prosze o linka z jakiej instrukcji instalowal

jesli macie jakas pewna i sprawdzana instrukcje instowalowania pod leoparda RoR + mysql to tez bym prosil , pozdroo

Dość radykalne posunięcie ale oby pomogło :wink:

hey kurde instalowalem z tej instrukcji - http://hivelogic.com/articles/ruby-rails-leopard
i dupa znow cos nie dziala , jestem grafikiem i nie znam sie na tym a chce sie zaczac uczyc railsow

znalazlem wlasnie cos takiego i sciagam - http://bitnami.org/stack/rubystack
co o tym myslicie jako wy programisci , albo prosze o was o jakiegs linka do instrukcji instalacji na leoparda gdzie wiecie ze wszystko jest krok po kroku elegancko i wiecei ze dziala na pewno

pozdro czekam na info , dzieki z gory za pomoc

Hivelogic świetnie to opisuje. Tyle, że trafiłeś na starą wersję.
Skorzystaj z: http://hivelogic.com/articles/compiling-ruby-rubygems-and-rails-on-snow-leopard/
Testowane na kilku snow leopardach, zawsze działa.

Bede walczyc jutro dzis juz za pozno :slight_smile: 3 w nocy , jutro postawie sobie od nowa Snow Leoparda bo na tym leopardzie juz niezle pomieszalem hehe i zrobie tak w instrukcji ktora mi podales tjeden , dzieki wielkie za info mam nadzieje ze pojdzie wszystko , jutro albo pojutrze dam znac , pozdro milej nocki

Ja mam setup sprawdzony na paru Snow Leopardach, działa bez zarzutów:

  1. Instalujesz Xcode (gcc).
  2. Instalujesz mac ports.
  3. Ustawiasz PATH, aby widział w pierwszej kolejności /opt/local/bin
  4. sudo port install mysql ruby itp. (trochę to potrwa)
  5. Gotowe. Zwróć uwagę na to, co Ci terminal wypisze po zainstalowaniu portu MySQL. Wklej w terminal to, co każą wkleić i tyle :).

Zdarza się, że jest problem z MySQL-em który nie chce wystartować, ale chyba to już naprawili. Jeśli jednak u Ciebie problem wystąpi, to trzeba ustawić mniej restrykcyjne uprawnienia na katalog /opt/local/var/log/mysql5

Setup bardzo prosty do wykonania, a portsy załatwią za Ciebie wszystkie zależności między pakietami, jeśli sobie zażyczysz gemów potrzebujących dziwnych bibliotek.

Ja za radą znajomego nie instalowałem mac portsów, bo ponoć robią straszny burdel w systemie.

Używam homebrew - http://github.com/mxcl/homebrew

Nikt chyba nie wspomniał, jeśli nie działa Ci rake db:create, a wydaje Ci się, że wszystko zainstalowałeś poprawnie
to spod konsoli mysql:

CREATE DATABASE trening_development;

przejdź do katalogu projektu, i utwórz prostego scaffolda np.

script/generate scaffold User name:string

później spod konsoli uruchom:

rake db:migrate

Jeśli w bazie utworzona została tabela tzn. że wszystko jest OK.
Jeśli nie to po wykonaniu migracji dostaniesz dokładniejszy błąd, np:

Access denied for user 'root'@'localhost' (using password: NO)

lub

Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

BTW na OS X jest dobre GUI do MySQL - Sequel Pro, zainstaluj sobie.

Zainstalowanie MySQL, Postgresa czy czegoś innego jak wszystko można zrobić na kilka sposobów.

Pierwszy sposób - znaleść uniwersalną wersję binarną dla naszego systemu, najprostszy i najbardziej windowsowy sposób, niestety mało osób robi paczki i ciężko jest coś znaleźć, a już napewno nie jest to up-to-date.

Można użyć macportów lub finka - tak też zrobiłem jednak nie podoba mi się jak to wszystko się odbywa przy używaniu tego cuda. Nawet po usunięciu zostawia trochę bałaganu w systemie.

Trzeci sposób to skompilowanie sobie samemu. Dopasowywujemy sobie wszystko pod wymiar, wiemy dokładnie co gdzie leży, jakie rozszerznia ma etc. etc. Jest to mocno geekowe i nawet linuxowcy instalują sobie soft z paczek bo kompliowanie bywa kłopotliwe.

Połączeniem MacPortów + własnego kompilowania jest Homebrew. Zajebista rzecz którą znalazłem kiedyś na githubie, robiąc research bo już sam chciałem coś takiego pisać. Nie mam co za bardzo się rozpisywać jak to działa i czemu jest takie fajne ponieważ wszystko ładnie i pięknie wytłumaczył autor w README - http://github.com/mxcl/homebrew

Jedyny słuszny manager pakietów. Polecam wszystkim użytkownikom OSX.

Odnosząc się bezpośrednio do problemu kalek’a - ja po upgrade do Snow Leoparda musiałem wiele rzeczy zaktualizować. Same MacPort chyba trzeba upgradować żeby działały na Snow. Ja poprostu je wyrzuciłem :wink:

Potrzebowalbym jeszcze porady odnosnie mysql

instrukcja - http://hivelogic.com/articles/compiling-mysql-on-snow-leopard/

ale martwi mnie to - These are instructions for compiling and installing a 64-bit version of MySQL,

A ja mam 32-bit czy to nie bedzie problem

a moze ma ktos instrukcje jak zainstalowac mysql na 32-bit snow leopard ??

rece mi opadly

zrobilem tak jak tu - http://hivelogic.com/articles/compiling-ruby-rubygems-and-rails-on-snow-leopard/
pozniej mysql tak jak tu - http://weblog.rubyonrails.org/2009/8/30/upgrading-to-snow-leopard , zrobilem z arch -i386

i znowu dostaje blad przy rake db:create

MacBook-Pro-kalek:problem kalek$ rake db:create
(in /Users/kalek/problem)
Couldn’t create database for {“reconnect”=>false, “encoding”=>“utf8”, “username”=>“root”, “adapter”=>“mysql”, “database”=>“problem_development”, “pool”=>5, “password”=>nil, “socket”=>"/tmp/mysql.sock"}, charset: utf8, collation: utf8_unicode_ci (if you set the charset manually, make sure you have a matching collation)

zrobilem tez tak jak mowil fastred , dostaje cos takiego ale nie kumam tego

MacBook-Pro-kalek:problem kalek$ rake db:migrate --trace
(in /Users/kalek/problem)
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:migrate
rake aborted!
uninitialized constant MysqlCompat::MysqlRes
/usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:440:in load_missing_constant' /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:80:inconst_missing’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/mysql_adapter.rb:9:in define_all_hashes_method!' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/mysql_adapter.rb:68:inmysql_connection’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:223:in send' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:223:innew_connection’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:245:in checkout_new_connection' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:188:incheckout’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:184:in loop' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:184:incheckout’
/usr/local/lib/ruby/1.8/monitor.rb:242:in synchronize' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:183:incheckout’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:98:in connection' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:326:inretrieve_connection’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:123:in retrieve_connection' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:115:inconnection’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/migration.rb:435:in initialize' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/migration.rb:400:innew’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/migration.rb:400:in up' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/migration.rb:383:inmigrate’
/usr/local/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/tasks/databases.rake:116
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in call' /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:inexecute’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in each' /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:inexecute’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:597:in invoke_with_call_chain' /usr/local/lib/ruby/1.8/monitor.rb:242:insynchronize’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:in invoke_with_call_chain' /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:583:ininvoke’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2051:in invoke_task' /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:intop_level’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in each' /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:intop_level’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in standard_exception_handling' /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2023:intop_level’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2001:in run' /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:instandard_exception_handling’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1998:in run' /usr/local/lib/ruby/gems/1.8/gems/rake-0.8.7/bin/rake:31 /usr/local/bin/rake:19:inload’
/usr/local/bin/rake:19
MacBook-Pro-kalek:problem kalek$

jak dla mnie wygląda to jak problem ze sterownikiem do mysql w ruby.

a co moge zrobic szukam w necie ale lipa :frowning: pomocy prosze

teraz mam taki problem

(in /Users/kalek/problem)
dyld: lazy symbol binding failed: Symbol not found: _mysql_init
Referenced from: /Library/Ruby/Gems/1.8/gems/mysql-2.8.1/lib/mysql_api.bundle
Expected in: flat namespace

dyld: Symbol not found: _mysql_init
Referenced from: /Library/Ruby/Gems/1.8/gems/mysql-2.8.1/lib/mysql_api.bundle
Expected in: flat namespace

jakais pomysl , ??

moja rada? olej mysqla, postgresa - skorzystaj z sqlite. na osx jest w standardzie, w zasadzie zero wstępnej konfiguracji, przy nauce nie zauważysz żadnej różnicy.