আমি মাইএসকিউএল দিয়ে আমার রেল অ্যাপ্লিকেশন তৈরি করতে চাই, কারণ আমার এটি খুব ভাল লেগেছে। আমি কীভাবে এটি ডিফল্ট এসকিউএলাইটের পরিবর্তে রেলের সর্বশেষ সংস্করণে করতে পারি?
আমি মাইএসকিউএল দিয়ে আমার রেল অ্যাপ্লিকেশন তৈরি করতে চাই, কারণ আমার এটি খুব ভাল লেগেছে। আমি কীভাবে এটি ডিফল্ট এসকিউএলাইটের পরিবর্তে রেলের সর্বশেষ সংস্করণে করতে পারি?
উত্তর:
আপনার যদি ইতিমধ্যে একটি রেল প্রকল্প রয়েছে, তবে config/database.yml
ফাইলটিতে অ্যাডাপ্টারটি পরিবর্তন করুন mysql
এবং নিশ্চিত করুন যে আপনি কোনও বৈধ ব্যবহারকারীর নাম এবং পাসওয়ার্ড এবং বিকল্প হিসাবে সকেট উল্লেখ করেছেন:
development:
adapter: mysql2
database: db_name_dev
username: koploper
password:
host: localhost
socket: /tmp/mysql.sock
এরপরে, নিশ্চিত করুন যে আপনি মাইএসকিএল 2 বা অ্যাক্টিভরেকর্ড-জেডিবিসিএমএসকিএল-অ্যাডাপ্টার (যদি জুরবি ব্যবহার করছেন) অন্তর্ভুক্ত করতে আপনার জেমফিল সম্পাদনা করেছেন।
gem 'sqlite3'
এবং যুক্ত করুনgem 'mysql2'
সাধারণত, আপনি ব্যবহার করে একটি নতুন রেল অ্যাপ তৈরি করবেন
rails ProjectName
মাইএসকিউএল ব্যবহার করতে, ব্যবহার করুন
rails new ProjectName -d mysql
রেল 3 এর জন্য আপনি এই কমান্ডটি মাইএসকিএল ব্যবহার করে একটি নতুন প্রকল্প তৈরি করতে পারেন:
$ rails new projectname -d mysql
আপনি যদি এখনও নিজের অ্যাপটি তৈরি না করে থাকেন, কেবল সিমডিডি (উইন্ডোজের জন্য) বা টার্মিনালে (লিনাক্স / ইউনিক্সের জন্য) যান এবং মাইএসকিএল ডাটাবেস সহ রেল অ্যাপ্লিকেশন তৈরি করতে নিম্নলিখিত কমান্ডটি টাইপ করুন:
$rails new <your_app_name> -d mysql
এটি রেল সংস্করণ ৩ এর উপরে যে কোনও কিছুর জন্য কাজ করে If যদি আপনি ইতিমধ্যে আপনার অ্যাপ তৈরি করেছেন, তবে আপনি নিম্নলিখিত 2 টির মধ্যে একটি করতে পারেন:
অথবা
বিকাশ:
অ্যাডাপ্টার: mysql2
ডাটাবেস: db_name_name
ব্যবহারকারী নাম: রুট
পাসওয়ার্ড:
হোস্ট: লোকালহোস্ট
সকেট: /tmp/mysql.sock
তদতিরিক্ত, আপনার জেমফাইল থেকে মণি 'স্ক্লাইট 3' সরান এবং মণিটি 'মাইএসকিএল 2' যুক্ত করুন
আপনি যদি রেল 3 বা ততোধিক সংস্করণ ব্যবহার করেন
rails new your_project_name -d mysql
আপনার যদি আগের সংস্করণ থাকে
rails new -d mysql your_project_name
সুতরাং আপনি আপনার প্রকল্পটি তৈরি করার আগে আপনাকে রেলের সংস্করণটি খুঁজে বের করতে হবে। যে আপনি খুঁজে পেতে পারেন
rails -v
rails new <project_name> -d mysql
অথবা
rails new projectname
কনফিগারেশন / ডাটাবেস.আইএমএল পরিবর্তন
development:
adapter: mysql2
database: db_name_name
username: root
password:
host: localhost
socket: /tmp/mysql.sock
-D বিকল্প সহ অ্যাপ্লিকেশন তৈরি করুন
rails new AppName -d mysql
$ rails --help
সর্বদা আপনার সেরা বন্ধু
ব্যবহার:
$ rails new APP_PATH[options]
আরও উল্লেখ করুন যে আবেদন নামের পরে বিকল্পগুলি দেওয়া উচিত
রেল এবং মাইএসকিএল
$ rails new project_name -d mysql
রেল এবং postgresql
$ rails new project_name -d postgresql
আপনার -d এর পরিবর্তে স্যুইচ-ডি ব্যবহার করা উচিত কারণ এটি দুটি অ্যাপ্লিকেশন এবং কোনও ডকুমেন্টেশন ফোল্ডার ছাড়াই মাইএসকিএল উত্পন্ন করবে।
rails -D mysql project_name (less than version 3)
rails new project_name -D mysql (version 3 and up)
বিকল্পভাবে আপনি কেবল --database
বিকল্পটি ব্যবহার করেন ।
কেবল রেলস কনসোল এ গিয়ে টাইপ করুন:
rails new YOURAPPNAME -d mysql
আপনি যদি একটি নতুন রেল অ্যাপ্লিকেশন তৈরি করে থাকেন তবে আপনি -D সুইচটি ব্যবহার করে ডাটাবেস সেট করতে পারেন:
rails -d mysql myapp
আপনার ডেটাবেসটি পরে পরিবর্তন করা সর্বদা সহজ, যদিও আপনি যদি কোনও ম্যাকের উপর বিকাশ করে থাকেন তবে স্ক্লাইট ব্যবহার করা সত্যিই সহজ।
নতুন প্রকল্পে, সহজ প্যাসি:
rails new your_new_project_name -d mysql
বিদ্যমান প্রকল্পে, অবশ্যই কৌশলযুক্ত। এটি আমাকে বিদ্যমান রেল প্রকল্পগুলিতে বেশ কয়েকটি সমস্যা দিয়েছে। আমার সাথে এই ধরণের কাজ করে:
# On Gemfile:
gem 'mysql2', '>= 0.3.18', '< 0.5' # copied from a new project for rails 5.1 :)
gem 'activerecord-mysql-adapter' # needed for mysql..
# On Dockerfile or on CLI:
sudo apt-get install -y mysql-client libmysqlclient-dev
প্রথমে নিশ্চিত করুন যে মাইএসকিএল রত্ন ইনস্টল করা আছে, যদি না? আপনার কনসোলে নিম্নলিখিত কমান্ডের চেয়ে কম টাইপ করুন
gem install mysql2
আপনার কনসোলে নিম্নলিখিত কমান্ডটি লিখে নতুন রেল অ্যাপ তৈরি করা এবং মাইএসকিএল ডাটাবেসটিকে ডিফল্ট ডেটাবেস হিসাবে সেট করা
rails new app-name -d mysql
মাইএসকিএল ডাটাবেস সহ এপিআইয়ের জন্য নতুন অ্যাপ তৈরি করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন
rails new <appname> --api -d mysql
adapter: mysql2
encoding: utf8
pool: 5
username: root
password:
socket: /var/run/mysqld/mysqld.sock
database.yml
# MySQL. Versions 5.1.10 and up are supported.
#
# Install the MySQL driver
# gem install mysql2
#
# Ensure the MySQL gem is defined in your Gemfile
# gem 'mysql2'
#
# And be sure to use new-style password hashing:
# https://dev.mysql.com/doc/refman/5.7/en/password-hashing.html
#
default: &default
adapter: mysql2
encoding: utf8
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
host: localhost
database: database_name
username: username
password: secret
development:
<<: *default
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
# As with config/secrets.yml, you never want to store sensitive information,
# like your database password, in your source code. If your source code is
# ever seen by anyone, they now have access to your database.
#
# Instead, provide the password as a unix environment variable when you boot
# the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database
# for a full rundown on how to provide these environment variables in a
# production deployment.
#
# On Heroku and other platform providers, you may have a full connection URL
# available as an environment variable. For example:
#
# DATABASE_URL="mysql2://myuser:mypass@localhost/somedatabase"
#
# You can use this database configuration with:
#
# production:
# url: <%= ENV['DATABASE_URL'] %>
#
production:
<<: *default
রত্ন :
# Use mysql as the database for Active Record
gem 'mysql2', '>= 0.4.4', '< 0.6.0'
আপনার প্রথমে নিশ্চিত হওয়া উচিত যে আপনি যদি উবুন্টু বা কোনও ডেবিয়ান ডিস্ট্রো ব্যবহার করেন তবে আপনার টার্মিনালে এটি চালনা না করে মাইএসকিউএল ড্রাইভারটি আপনার সিস্টেমে রয়েছে make
sudo apt-get install mysql-client libmysqlclient-dev
এবং এটি আপনার গেমফাইলে যুক্ত করুন
gem 'mysql2', '~> 0.3.16'
তারপরে আপনার প্রকল্পের মূল ডিরেক্টরিতে চালান
bundle install
এর পরে আপনি পূর্ববর্তী উত্তর হিসাবে কনফিগার / ডাটাবেস.আইএমএলতে মাইএসকিএল কনফিগার করতে পারেন