Tôi muốn cài đặt mySQL trên CentOS.
Tôi không có tài khoản root trên máy đó.
Làm cách nào tôi có thể cài đặt myQuery trên CentOS với tư cách là người dùng . mà không được root?
Tôi muốn cài đặt mySQL trên CentOS.
Tôi không có tài khoản root trên máy đó.
Làm cách nào tôi có thể cài đặt myQuery trên CentOS với tư cách là người dùng . mà không được root?
Câu trả lời:
Đối với các gói RPM (và CentOS chắc chắn là một hệ thống RPM), bạn cần phải root để chạy trình cài đặt vòng / phút. Trình cài đặt RPM cần ghi vào một số dbs theo dõi gói và bạn cần phải root để ghi cho chúng. OK, tốt, mysql cho phép bạn cài đặt từ tarball, phải không? ( http://dev.mysql.com/doc/refman/5.0/en/binary-installation.html ). Vâng, vâng, nhưng có một cài đặt bài đăng mà bạn sẽ cần chạy, mà bạn sẽ cần phải root để làm.
RPM có thể có các bước cài đặt trước và sau khi cài đặt bên ngoài các tệp. chúng có thể thay đổi tập tin cấu hình, thêm / xóa người dùng. Nói chung bạn có thể cần phải root để làm những việc này. Ngay cả khi không có tập lệnh, bạn thường cài đặt vào các thư mục mà chỉ root mới có thể cài đặt.
Trong một bình luận khác, bạn đề cập đến các gói khác mà bạn đã cài đặt mà bạn không cần phải root. Đối với các gói này, tôi chắc chắn rằng:
/etc
, không có người dùng mới như MySQL cần)CÀI ĐẶT MYSQL TRÊN TRUNG TÂM KHÔNG CÓ TÀI KHOẢN ROOT:
/home/martin/mysql
Tạo my.cnf
tập tin trong thư mục nhà của bạn. Nội dung tập tin phải là:
[server]
user=martin
basedir=/home/martin/mysql
datadir=/home/martin/sql_data
socket=/home/martin/socket
port=3666
Đi đến /home/martin/mysql
thư mục và thực hiện:
./scripts/mysql_install_db --defaults-file=~/my.cnf --user=martin --basedir=/home/martin/mysql --datadir=/home/martin/sql_data --socket=/home/martin/socket
Lưu ý rằng --defaults-file
PHẢI là tham số đầu tiên, nếu không nó sẽ không hoạt động! Đó là một lỗi của MySQL.
Máy chủ MySQL của bạn đã sẵn sàng. Bắt đầu với lệnh này:
./bin/mysqld_safe --defaults-file=~/my.cnf &
Kết nối với máy chủ:
mysql -h 127.0.0.1 -P 3666 -u root -p (using tcp)
hoặc là
mysql --socket=/home/martin/socket -u root -p (using unix socket)
Tắt máy chủ:
mysqladmin -h 127.0.0.1 -P 3666 -u root shutdown(using tcp)
hoặc là
mysqladmin --socket=/home/martin/socket -u root shutdown (using unix socket)
Bạn có thể xây dựng nó và chạy nó từ thư mục chính của bạn nếu bạn có sẵn một trình biên dịch, nhưng để cài đặt phần mềm trên linux, bạn sẽ yêu cầu quyền truy cập root.
Câu trả lời của Martin đã làm việc cho tôi. Để giải quyết các bình luận (Tôi không thể bình luận do quyền ở đây):
Để kết nối với máy chủ, bạn cần thêm thư mục / home / martin / mysql / bin (/ home / martin / mysql / bin trong ví dụ) vào đường dẫn của bạn hoặc sử dụng tên đường dẫn đầy đủ để chạy nó:
/home/martin/mysql/bin/mysql --socket=/home/martin/socket -u root -p
Phần còn thiếu khác là thiết lập mật khẩu gốc. Sau khi thực hiện bước bin / mysqld_safe (xem bước 5 trong phản hồi của Martin), MySql đã cho tôi biết cách đặt mật khẩu gốc. Bạn cần thực hiện bước đó, nhưng thêm tùy chọn --socket = / home / martin / socket vào dòng lệnh.