Không thể đặt mật khẩu cho người dùng gốc mys mys


16

Tôi mới dùng Ubuntu. Tôi đang chạy Ubuntu 12.10. Tôi đang cố gắng cài đặt apache, php, mysql. Tuy nhiên tôi đã cài đặt apache và nó đang chạy hoàn hảo.

sudo apt-get install apache2

Nhưng khi tôi cố gắng cài đặt mysql bằng lệnh sau

sudo apt-get install mysql-server 

Sau khi tải về, nó hỏi mật khẩu nhưng sau khi nhập và xác nhận mật khẩu. Tôi nhận được thông báo lỗi sau.

Không thể đặt mật khẩu cho người dùng "root" Mysql

Đã xảy ra lỗi trong khi đặt mật khẩu cho mysql
người dùng quản trị. Điều này có thể xảy ra do tài khoản đã có mật khẩu hoặc do sự cố giao tiếp với máy chủ Mysql.
Bạn nên kiểm tra mật khẩu của tài khoản sau khi cài đặt gói.
Vui lòng đọc tệp /usr/share/doc/mysql-server-5.5/README.Debian để biết thêm thông tin.

Sau khi nhấp vào nút ok trên lời nhắc, tôi nhận được thông báo sau trên thiết bị đầu cuối

Setting up mysql-server-5.5 (5.5.29-0ubuntu0.12.10.1) ...
start: Job failed to start
invoke-rc.d: initscript mysql, action "start" failed.
dpkg: error processing mysql-server-5.5 (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
mysql-server-5.5
E: Sub-process /usr/bin/dpkg returned an error code (1)

Nhật ký lỗi Mysql nói

130209 14:26:37 [Note] Plugin 'FEDERATED' is disabled.
130209 14:26:37 InnoDB: The InnoDB memory heap is disabled
130209 14:26:37 InnoDB: Mutexes and rw_locks use GCC atomic builtins
130209 14:26:37 InnoDB: Compressed tables use zlib 1.2.7
130209 14:26:37 InnoDB: Using Linux native AIO
mysqld: Can't create/write to file '/tmp/ibNuz7q0' (Errcode: 13)
130209 14:26:37  InnoDB: Error: unable to create temporary file; errno: 13
130209 14:26:37 [ERROR] Plugin 'InnoDB' init function returned error.
130209 14:26:37 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
130209 14:26:37 [ERROR] Unknown/unsupported storage engine: InnoDB
130209 14:26:37 [ERROR] Aborting

Tôi đã tìm kiếm vấn đề này, nhưng không có gì làm việc cho tôi. Xin vui lòng giúp đỡ.


1
Kiểm tra nếu bạn mysql-serverđã cài đặt bằng cách chạy ps -e | grep mysqld. Nếu bạn thấy bất kỳ đầu ra nào có nghĩa là nó đã được cài đặt.
màu xanh lá cây

Tôi không nhận được bất kỳ đầu ra nào cho việc này
Devendra Verma

Lỗi mysql mà bạn đã đăng có thể chỉ ra sự cố với /etc/mysql/my.cnf. Nếu bạn đã sửa đổi tệp đó hoặc bất kỳ tệp nào trong thư mục / etc / mysql, hãy khôi phục bản gốc và thử lại.
Richard Ayotte

Nathan, tôi đang đối mặt với cùng một vấn đề trong bài đăng này và tôi đã làm theo các hướng dẫn tương tự như green7 đã đăng và của bạn cũng vậy. Tôi thậm chí không thể hiểu tại sao mysql ngừng hoạt động. Tôi rất vui nếu bạn có thể giúp tôi thêm. Chỉnh sửa: Chỉ để cho bạn biết rằng tất cả những điều đó đã xảy ra bởi vì tôi đã bắt đầu nhận được thông báo sau đây khi tôi cố gắng cài đặt mysql: ERROR: 1146 Bảng 'mysql.user' không tồn tại Cảm ơn trước.

không thể trả lời do danh tiếng thấp. Gist
gayavat

Câu trả lời:


25

Vấn đề cài đặt mật khẩu gốc tương tự ở đây, tôi có thể gây ra bởi việc cài đặt thủ công máy chủ mysql 5.6 không thành công trước đây. Việc gỡ cài đặt mysql kỹ lưỡng không phải là nhiệm vụ dễ dàng. Tôi đã thanh trừng / cài đặt lại trong nhiều giờ và cuối cùng đã giải quyết nó với

sudo dpkg --purge mysql-client-core-5.5 # or alternative version
sudo dpkg --purge mysql-client
sudo dpkg --purge mysql-server-core-5.5 # or alternative version
sudo dpkg --purge mysql-common

Về cơ bản tôi chỉ cần gõ

sudo dpkg --purge mysql # followed by two tabs

Sau đó, --purgebất kỳ gói thiết bị đầu cuối tự động hoàn thành. Thanh lọc mysql-commoncuối cùng vì một số vấn đề phụ thuộc.

Sử dụng dpkgcác lệnh trên ngoài việc

sudo apt-get --purge remove mysql-server
sudo apt-get --purge remove mysql-client
sudo apt-get --purge remove mysql-common
sudo apt-get autoremove
sudo apt-get autoclean

Ngoài ra tôi đã thử phương pháp của Greq

sudo rm -rf /etc/mysql

Xóa thư mục mysql khỏi / var / lib

sudo rm -rf /var/lib/mysql/

Tại thời điểm này, để đảm bảo mysql được gỡ bỏ hoàn toàn, hãy kiểm tra với

which mysql
mysql --version

Cái đầu tiên sẽ không trả lại đầu ra thay vì một thư mục. Thứ hai nên trả về mysql không được cài đặt thay vì số phiên bản. Nếu không thì việc gỡ bỏ vẫn chưa hoàn thành.

Điều quan trọng dpkg --purgelà, khi sử dụng apt-getmột mình which mysqlmysql --versionhành xử như mysql vẫn còn đó.

Trước khi cài đặt lại, cấu hình lại dpkg và cập nhật

sudo dpkg --configure -a
sudo apt-get update

Vấn đề được giải quyết cuối cùng. Hy vọng nó sẽ hữu ích cho những người khác.


3
Trong trường hợp của tôi, khi: sudo dpkg --purge phổ biến 2). libmysqlclient18 phụ thuộc vào mysql-common (> = 5.5,35-0ubfox0.12.04.2). dpkg: xử lý lỗi mysql-common (--purge): các vấn đề phụ thuộc - không xóa lỗi đã gặp phải trong khi xử lý: mysql-common
ses

Điều này cũng làm việc cho tôi.
Michael Lindman

Tôi đã tìm kiếm một thời gian cho một bộ hướng dẫn sẽ giải quyết hoàn toàn tình huống. Điều này làm việc đúng như mô tả. Cảm ơn.
Matt Setter

Làm việc cho tôi cảm ơn người đàn ông! Thật đáng tiếc khi linux thực hiện một công việc lộn xộn như vậy với vị trí tệp!
miền nam

cuối cùng làm việc cho tôi. Tôi nghĩ rằng một khởi động lại sau tất cả những gì có thể đã giúp tôi vượt qua!
Danimal

5

Bạn cần phải loại bỏ hoàn toàn mysql. Tin tôi đi, tôi đã thử. dpkg sẽ không làm điều này một mình.

Xem

/programming/10853004/removing-mysql-5-5-completely

Nếu bạn đang vội

sudo service mysql stop  #or mysqld
sudo killall -9 mysql
sudo killall -9 mysqld
sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
sudo deluser mysql
sudo rm -rf /var/lib/mysql
sudo apt-get purge mysql-server-core-5.5
sudo apt-get purge mysql-client-core-5.5

Thưa ngài, là một anh hùng! Tôi đã dành hàng giờ để googling và thử các lời khuyên khác nhau ở khắp mọi nơi, và chỉ có bạn thực sự làm việc! Tôi nghĩ rằng sự khác biệt nằm trong việc xóa người dùng mysql, vì tôi đã thử hầu hết các tùy chọn khác. PS: Tôi đã phải thực hiện kill -9một số quy trình trước khi chạy deluser mysqllệnh thành công.
Shautieh

3

Tôi nghĩ lý do là mysqlkhông thể truy cập vào /tmp/thư mục của bạn , như nó nói trong dòng

mysqld: Không thể tạo / ghi vào tệp '/ tmp / ibNuz7q0' (Mã số: 13)

Chạy các lệnh sau trong một thiết bị đầu cuối:

sudo su
gốc chown: root / tmp
chmod 1777 / tmp
/ usr / sbin / mysqld &

Giải thích :

  • sudo su: Để chạy các lệnh sau như root.
  • chown root:root /tmp: Làm cho người dùng rootcủa rootnhóm là chủ sở hữu của /tmp.
  • chmod 1777 /tmp: Thay đổi quyền của /tmpnó để có thể truy cập được cho tất cả người dùng và chỉ chủ sở hữu hoặc chủ sở hữu mới rootcó thể xóa các tệp trong thư mục đó. (Thông tin thêm về quyền truy cập tệp tại đây )
  • /usr/sbin/mysqld &: Bắt đầu mysqlddaemon.

Sau khi nhập lệnh cuối cùng, tôi nhận được thông báo này # /etc/init.d mysqld bắt đầu bash: /etc/init.d: ​​Là một thư mục
Devendra Verma

sửa đổi câu trả lời
màu xanh lá cây

Tôi nhận được đầu ra này sau / usr / sbin / mysqld & / usr / sbin / mysqld & [1] 3497. Làm cách nào để kiểm tra xem mysql có đang chạy không
Devendra Verma

Để kiểm tra xem mysql của bạn có đang chạy hay không, ps -e | grep mysqldvà nếu bạn nhận được một số đầu ra, nó đang chạy tốt.
màu xanh lá cây

cảm ơn @ green7 ở đây là đầu ra ps -e | grep mysqld 1075? 00:00:04 mysqld
Devendra Verma

2

Tôi đã vật lộn trong vài giờ đêm qua với điều này và đọc mọi thứ mà Google có trong chỉ mục của mình về vấn đề này.

Tôi đã cài đặt lại mysql 20 lần. Đó có lẽ là một con số theo nghĩa đen.

Cuối cùng, một trong hai hoặc cả hai đã khắc phục sự cố (sau khi gỡ cài đặt / thanh lọc / ghi mysql):

  1. sudo rm -rf /etc/mysql (điều này đã không được gỡ bỏ sau khi thanh trừng)
  2. Sau đó tôi tắt máy chủ và thay đổi kích thước cá thể VM của tôi từ 512MB thành 1GB (RAM).

Sau đó, tôi chạy sudo aptitude install mysql-servervà cuối cùng nó đã cài đặt thành công:

$ sudo aptitude install mysql-server
[sudo] password for [REDACTED]: 
The following NEW packages will be installed:
  libdbd-mysql-perl{a} libmysqlclient18{a} mysql-client-5.5{a} mysql-common{a} mysql-server mysql-server-5.5{a} mysql-server-core-5.5{a} 
0 packages upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 8,589 kB of archives. After unpacking 94.6 MB will be used.
Do you want to continue? [Y/n/?] Y
Get: 1 http://ftp.us.debian.org/debian/ wheezy/main mysql-common all 5.5.31+dfsg-0+wheezy1 [85.3 kB]
Get: 2 http://ftp.us.debian.org/debian/ wheezy/main libmysqlclient18 amd64 5.5.31+dfsg-0+wheezy1 [687 kB]
Get: 3 http://ftp.us.debian.org/debian/ wheezy/main libdbd-mysql-perl amd64 4.021-1+b1 [126 kB]
Get: 4 http://ftp.us.debian.org/debian/ wheezy/main mysql-client-5.5 amd64 5.5.31+dfsg-0+wheezy1 [1,923 kB]
Get: 5 http://ftp.us.debian.org/debian/ wheezy/main mysql-server-core-5.5 amd64 5.5.31+dfsg-0+wheezy1 [3,784 kB]
Get: 6 http://ftp.us.debian.org/debian/ wheezy/main mysql-server-5.5 amd64 5.5.31+dfsg-0+wheezy1 [1,900 kB]
Get: 7 http://ftp.us.debian.org/debian/ wheezy/main mysql-server all 5.5.31+dfsg-0+wheezy1 [83.6 kB]
Fetched 8,589 kB in 2s (3,068 kB/s)
Preconfiguring packages ...
Selecting previously unselected package mysql-common.
(Reading database ... 52430 files and directories currently installed.)
Unpacking mysql-common (from .../mysql-common_5.5.31+dfsg-0+wheezy1_all.deb) ...
Selecting previously unselected package libmysqlclient18:amd64.
Unpacking libmysqlclient18:amd64 (from .../libmysqlclient18_5.5.31+dfsg-0+wheezy1_amd64.deb) ...
Selecting previously unselected package libdbd-mysql-perl.
Unpacking libdbd-mysql-perl (from .../libdbd-mysql-perl_4.021-1+b1_amd64.deb) ...
Selecting previously unselected package mysql-client-5.5.
Unpacking mysql-client-5.5 (from .../mysql-client-5.5_5.5.31+dfsg-0+wheezy1_amd64.deb) ...
Selecting previously unselected package mysql-server-core-5.5.
Unpacking mysql-server-core-5.5 (from .../mysql-server-core-5.5_5.5.31+dfsg-0+wheezy1_amd64.deb) ...
Processing triggers for man-db ...
Setting up mysql-common (5.5.31+dfsg-0+wheezy1) ...
Selecting previously unselected package mysql-server-5.5.
(Reading database ... 52616 files and directories currently installed.)
Unpacking mysql-server-5.5 (from .../mysql-server-5.5_5.5.31+dfsg-0+wheezy1_amd64.deb) ...
Selecting previously unselected package mysql-server.
Unpacking mysql-server (from .../mysql-server_5.5.31+dfsg-0+wheezy1_all.deb) ...
Processing triggers for man-db ...
Setting up libmysqlclient18:amd64 (5.5.31+dfsg-0+wheezy1) ...
Setting up libdbd-mysql-perl (4.021-1+b1) ...
Setting up mysql-client-5.5 (5.5.31+dfsg-0+wheezy1) ...
Setting up mysql-server-core-5.5 (5.5.31+dfsg-0+wheezy1) ...
Setting up mysql-server-5.5 (5.5.31+dfsg-0+wheezy1) ...
Stopping MySQL database server: mysqld.
131124 15:39:56 [Note] Plugin 'FEDERATED' is disabled.
131124 15:39:56 InnoDB: The InnoDB memory heap is disabled
131124 15:39:56 InnoDB: Mutexes and rw_locks use GCC atomic builtins
131124 15:39:56 InnoDB: Compressed tables use zlib 1.2.7
131124 15:39:56 InnoDB: Using Linux native AIO
131124 15:39:56 InnoDB: Initializing buffer pool, size = 128.0M
131124 15:39:56 InnoDB: Completed initialization of buffer pool
131124 15:39:56 InnoDB: highest supported file format is Barracuda.
131124 15:39:56  InnoDB: Waiting for the background threads to start
131124 15:39:57 InnoDB: 5.5.31 started; log sequence number 1595675
131124 15:39:57  InnoDB: Starting shutdown...
131124 15:39:58  InnoDB: Shutdown completed; log sequence number 1595675
Starting MySQL database server: mysqld ..
Checking for tables which need an upgrade, are corrupt or were 
not closed cleanly..
Setting up mysql-server (5.5.31+dfsg-0+wheezy1) ...

1

Nhập sudo apt-get purge mysql-server && sudo apt-get install mysql-servernếu điều đó không làm việc xin vui lòng để lại nhận xét về câu trả lời của tôi và tôi sẽ làm việc với bạn để giải quyết vấn đề này.


0

Các tập lệnh cài đặt cho tất cả các phiên bản Ubuntu sau 12.04 không tuân theo quy trình thiết lập tương tự như 12.04. Trong 12.04, bạn được yêu cầu đặt mật khẩu mysql trong quá trình cài đặt. Cho 12.10 và sau khi nó chỉ cần hỏi mật khẩu gốc mysql, nhưng mật khẩu đó là gì? Kịch bản cài đặt là một bước lùi. Tôi khuyên bạn nên cài đặt 12.04 trong một máy ảo và cài đặt mysql ở đó. Nếu bạn giống như tôi và sử dụng kết hợp với Drupal, chắc chắn sẽ dính vào 12.04.


0

Giải pháp khác nhau cho những người vẫn có vấn đề. Hy vọng tôi có thể giúp những người đang cố gắng cài đặt lại Mysql. Lưu ý, đó là một nhiệm vụ tìm kiếm và phá hủy. Vì vậy, mệt mỏi. Giả sử gốc của bạn:

apt-get purge mysql*
apt-get purge dbconfig-common #the screen used for mysql password
find / -name *mysql*          #delete any traces of mysql
#insert apt-get cleanups, autoremove,updates etc.

Ban đầu, một cái gì đó còn sót lại đã can thiệp vào quá trình khởi động mysqlserver-5.5 của tôi. Những lệnh này đã kết thúc giải quyết vấn đề cho bản thân tôi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.