Hướng dẫn how set mysql root password in centos? - cách đặt mật khẩu gốc mysql bằng centos?

Bạn đang sử dụng phiên bản MySQL nào? Tôi đang sử dụng 5.7.10 và có cùng một vấn đề với việc đăng nhập như root

Có 2 vấn đề - tại sao tôi không thể đăng nhập làm root để bắt đầu và tại sao tôi không thể sử dụng 'mysqld_safe` để bắt đầu mysql để đặt lại mật khẩu gốc.

Tôi không có câu trả lời để thiết lập mật khẩu gốc trong quá trình cài đặt, nhưng đây là những gì bạn làm để đặt lại mật khẩu gốc

Chỉnh sửa mật khẩu gốc ban đầu khi cài đặt có thể được tìm thấy bằng cách chạy the initial root password on install can be found by running

grep 'temporary password' /var/log/mysqld.log

http://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html


  1. 1. Stop mysql:
    sudo systemctl stop mysqld
    
    2. Set the mySQL environment option 
    sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
    
    3. Start mysql usig the options you just set
    sudo systemctl start mysqld
    
    4. Login as root
    mysql -u root
    
    5. Update the root user password with these mysql commands
    mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
        -> WHERE User = 'root' AND Host = 'localhost';
    mysql> FLUSH PRIVILEGES;
    mysql> quit
    
    *** Edit ***
    As mentioned my shokulei in the comments, for 5.7.6 and later, you should use 
       mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
    Or you'll get a warning
    
    6. Stop mysql
    sudo systemctl stop mysqld
    
    7. Unset the mySQL envitroment option so it starts normally next time
    sudo systemctl unset-environment MYSQLD_OPTS
    
    8. Start mysql normally:
    sudo systemctl start mysqld
    
    Try to login using your new password:
    7. mysql -u root -p
    
    0 hiện được sử dụng để chăm sóc MySQL thay vì
    1. Stop mysql:
    sudo systemctl stop mysqld
    
    2. Set the mySQL environment option 
    sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
    
    3. Start mysql usig the options you just set
    sudo systemctl start mysqld
    
    4. Login as root
    mysql -u root
    
    5. Update the root user password with these mysql commands
    mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
        -> WHERE User = 'root' AND Host = 'localhost';
    mysql> FLUSH PRIVILEGES;
    mysql> quit
    
    *** Edit ***
    As mentioned my shokulei in the comments, for 5.7.6 and later, you should use 
       mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
    Or you'll get a warning
    
    6. Stop mysql
    sudo systemctl stop mysqld
    
    7. Unset the mySQL envitroment option so it starts normally next time
    sudo systemctl unset-environment MYSQLD_OPTS
    
    8. Start mysql normally:
    sudo systemctl start mysqld
    
    Try to login using your new password:
    7. mysql -u root -p
    
    1 (đó là lý do tại sao bạn gặp lỗi
    1. Stop mysql:
    sudo systemctl stop mysqld
    
    2. Set the mySQL environment option 
    sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
    
    3. Start mysql usig the options you just set
    sudo systemctl start mysqld
    
    4. Login as root
    mysql -u root
    
    5. Update the root user password with these mysql commands
    mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
        -> WHERE User = 'root' AND Host = 'localhost';
    mysql> FLUSH PRIVILEGES;
    mysql> quit
    
    *** Edit ***
    As mentioned my shokulei in the comments, for 5.7.6 and later, you should use 
       mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
    Or you'll get a warning
    
    6. Stop mysql
    sudo systemctl stop mysqld
    
    7. Unset the mySQL envitroment option so it starts normally next time
    sudo systemctl unset-environment MYSQLD_OPTS
    
    8. Start mysql normally:
    sudo systemctl start mysqld
    
    Try to login using your new password:
    7. mysql -u root -p
    
    2 - nó chưa được cài đặt)

  2. Cấu trúc bảng

    1. Stop mysql:
    sudo systemctl stop mysqld
    
    2. Set the mySQL environment option 
    sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
    
    3. Start mysql usig the options you just set
    sudo systemctl start mysqld
    
    4. Login as root
    mysql -u root
    
    5. Update the root user password with these mysql commands
    mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
        -> WHERE User = 'root' AND Host = 'localhost';
    mysql> FLUSH PRIVILEGES;
    mysql> quit
    
    *** Edit ***
    As mentioned my shokulei in the comments, for 5.7.6 and later, you should use 
       mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
    Or you'll get a warning
    
    6. Stop mysql
    sudo systemctl stop mysqld
    
    7. Unset the mySQL envitroment option so it starts normally next time
    sudo systemctl unset-environment MYSQLD_OPTS
    
    8. Start mysql normally:
    sudo systemctl start mysqld
    
    Try to login using your new password:
    7. mysql -u root -p
    
    3 đã thay đổi.

Vì vậy, để đặt lại mật khẩu gốc, bạn vẫn bắt đầu MySQL với các tùy chọn

1. Stop mysql:
sudo systemctl stop mysqld

2. Set the mySQL environment option 
sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"

3. Start mysql usig the options you just set
sudo systemctl start mysqld

4. Login as root
mysql -u root

5. Update the root user password with these mysql commands
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
    -> WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit

*** Edit ***
As mentioned my shokulei in the comments, for 5.7.6 and later, you should use 
   mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Or you'll get a warning

6. Stop mysql
sudo systemctl stop mysqld

7. Unset the mySQL envitroment option so it starts normally next time
sudo systemctl unset-environment MYSQLD_OPTS

8. Start mysql normally:
sudo systemctl start mysqld

Try to login using your new password:
7. mysql -u root -p
4 và cập nhật bảng
1. Stop mysql:
sudo systemctl stop mysqld

2. Set the mySQL environment option 
sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"

3. Start mysql usig the options you just set
sudo systemctl start mysqld

4. Login as root
mysql -u root

5. Update the root user password with these mysql commands
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
    -> WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit

*** Edit ***
As mentioned my shokulei in the comments, for 5.7.6 and later, you should use 
   mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Or you'll get a warning

6. Stop mysql
sudo systemctl stop mysqld

7. Unset the mySQL envitroment option so it starts normally next time
sudo systemctl unset-environment MYSQLD_OPTS

8. Start mysql normally:
sudo systemctl start mysqld

Try to login using your new password:
7. mysql -u root -p
3, nhưng cách bạn thực hiện nó đã thay đổi.

1. Stop mysql:
sudo systemctl stop mysqld

2. Set the mySQL environment option 
sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"

3. Start mysql usig the options you just set
sudo systemctl start mysqld

4. Login as root
mysql -u root

5. Update the root user password with these mysql commands
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
    -> WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit

*** Edit ***
As mentioned my shokulei in the comments, for 5.7.6 and later, you should use 
   mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Or you'll get a warning

6. Stop mysql
sudo systemctl stop mysqld

7. Unset the mySQL envitroment option so it starts normally next time
sudo systemctl unset-environment MYSQLD_OPTS

8. Start mysql normally:
sudo systemctl start mysqld

Try to login using your new password:
7. mysql -u root -p

Tài liệu tham khảo

Như đã nói tại http://dev.mysql.com/doc/refman/5.7/en/mysqld-safe.html,

Ghi chú

Kể từ MySQL 5.7.6, để cài đặt MySQL bằng cách sử dụng phân phối RPM, khởi động và tắt máy chủ được quản lý bởi SystemD trên một số nền tảng Linux. Trên các nền tảng này, mysqld_safe không còn được cài đặt vì nó không cần thiết. Để biết thêm thông tin, xem Phần 2.5.10, Quản lý máy chủ MySQL với SystemD.

Điều này đưa bạn đến http://dev.mysql.com/doc/refman/5.7/en/server-man quản lý-using-systemd.html nơi nó đề cập đến

1. Stop mysql:
sudo systemctl stop mysqld

2. Set the mySQL environment option 
sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"

3. Start mysql usig the options you just set
sudo systemctl start mysqld

4. Login as root
mysql -u root

5. Update the root user password with these mysql commands
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
    -> WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit

*** Edit ***
As mentioned my shokulei in the comments, for 5.7.6 and later, you should use 
   mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Or you'll get a warning

6. Stop mysql
sudo systemctl stop mysqld

7. Unset the mySQL envitroment option so it starts normally next time
sudo systemctl unset-environment MYSQLD_OPTS

8. Start mysql normally:
sudo systemctl start mysqld

Try to login using your new password:
7. mysql -u root -p
6 về phía dưới của trang.

Các lệnh đặt lại mật khẩu nằm ở dưới cùng của http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

Để cài đặt MySQL 5.7 mới nhất trên RHEL/CentOS 7. Có vài bước sau-::

Bước 1-: Thêm kho lưu trữ Epel dưới đây Add the below EPEL Repository

$ sudo rpm -iUvh http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

Bước 2-: Cài đặt máy chủ MySQL bằng trình cài đặt Yum bên dưới. Install the MySql Server using below yum installer.

$ sudo yum install mysql-server 

Bước 3-: Thêm vào khởi động hệ thống và khởi động máy chủ MySQL. Add to system Startup and start the Mysql Server.

$ sudo systemctl enable mysqld
$ sudo systemctl start mysqld

Bước 4-: Đặt lại mật khẩu gốc máy chủ MySQL. Reset the MySql server root password.

sudo grep 'temporary password' /var/log/mysqld.log

Đầu ra một cái gì đó như-:

10.744785Z 1 [Note] A temporary password is generated for root@localhost: o!5y,oJGALQa

Sử dụng mật khẩu trên trong quá trình đặt lại quá trình mysql_secure_installation.

$ sudo mysql_secure_installation
Securing the MySQL server deployment.

Enter password for user root: 
The 'validate_password' plugin is installed on the server.
The subsequent steps will run with the existing configuration
of the plugin.
Using existing password for root.

Estimated strength of the password: 100 
Change the password for root ? ((Press y|Y for Yes, any other key for No) : y

New password: 

Re-enter new password: 

Estimated strength of the password: 100 
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.


Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.

All done!

Bạn đã đặt lại thành công mật khẩu gốc của máy chủ MySQL.

Bước 5-: Sử dụng lệnh bên dưới để kiểm tra kết nối máy chủ MySQL hay không. Use the below command to check the mysql server connecting or not.

$ mysql -u root -p

Output-:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 5.7.12 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

mysql>

Xem bài viết của tôi: Cài đặt-Latest-Mysql-5-7-rhelcentos-7

Làm thế nào đặt mật khẩu gốc mysql trong linux?

Cách đặt lại hoặc thay đổi mật khẩu gốc MySQL trên Linux hoặc Windows..
Bước 1: Đăng nhập với tư cách là người dùng MySQL ..
Bước 2: Tìm tệp .pid cho dịch vụ MySQL ..
Bước 3: Giết quy trình MySQLD ..
Bước 4: Tạo tệp mật khẩu ..
Bước 5: Khởi động lại máy chủ MySQL và áp dụng mật khẩu mới ..
Bước 6: Dọn dẹp ..

Mật khẩu mặc định cho MySQL trong Centos 7 là gì?

Không có mật khẩu mặc định (mật khẩu trống) cho máy chủ cơ sở dữ liệu MySQL.Bạn cần gán mật khẩu gốc sau khi cài đặt MySQL thông qua lệnh YUM / RPM.Một số quản trị viên đặt mật khẩu gốc giống như mật khẩu gốc máy chủ. for MySQL database server. You need to assign root password after installing MySQL via yum / rpm command. Some admin set the root password same as the server root password.