給MySQL新增超級使用者許可權

2022-03-23 04:00:37 字數 3199 閱讀 9186

給mysql新增超級使用者許可權。

安裝環境:centos7 64位,mysql5.7

在mysql官網中**yum源rpm安裝包:

# **mysql源安裝包

shell> wget

# 安裝mysql源

shell> yum localinstall mysql57-community-release-el7-8.noarch.rpm

檢查mysql源是否安裝成功

shell> yum repolist enabled | grep "mysql.*-community.*"看到上圖所示表示安裝成功。

可以修改vim /etc/yum.repos.d/mysql-community.repo源,改變預設安裝的mysql版本。比如要安裝5.6版本,將5.7源的enabled=1改成enabled=0。然後再將5.6源的enabled=0改成enabled=1即可。改完之後的效果如下所示:

shell> yum install mysql-community-servershell> systemctl start mysqld檢視mysql的啟動狀態

shell> systemctl status mysqld

● mysqld.service - mysql server

loaded: loaded (/usr/lib/systemd/system/mysqld.service; disabled; vendor preset: disabled)

active: active (running) since 五 2016-06-24 04:37:37 cst; 35min ago

main pid: 2888 (mysqld)

cgroup: /system.slice/mysqld.service

└─2888 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

6月 24 04:37:36 localhost.localdomain systemd[1]: starting mysql server...

6月 24 04:37:37 localhost.localdomain systemd[1]: started mysql server.

shell> systemctl enable mysqld

shell> systemctl daemon-reload

mysql安裝完成之後,在/var/log/mysqld.log檔案中給root生成了乙個預設密碼。通過下面的方式找到root預設密碼,然後登入mysql進行修改:

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

shell> mysql -uroot -p

mysql> alter user 'root'@'localhost' identified by 'mynewpass4!';

或者mysql> set password for 'root'@'localhost'=password('mynewpass4!');注意:mysql5.7預設安裝了密碼安全檢查外掛程式(validate_password),預設密碼檢查策略要求密碼必須包含:大小寫字母、數字和特殊符號,並且長度不能少於8位。否則會提示error 1819 (hy000): your password does not satisfy the current policy requirements錯誤,如下圖所示:

通過msyql環境變數可以檢視密碼策略的相關資訊:

mysql> show variables like '%password%';validate_password_policy:密碼策略,預設為medium策略

validate_password_dictionary_file:密碼策略檔案,策略為strong才需要

validate_password_length:密碼最少長度

validate_password_mixed_case_count:大小寫字元長度,至少1個

validate_password_number_count :數字至少1個

validate_password_special_char_count:特殊字元至少1個

上述引數是預設策略medium的密碼檢查規則。

共有以下幾種密碼策略:

策略檢查規則

0 or low

length

1 or medium

length; numeric, lowercase/uppercase, and special characters

2 or strong

length; numeric, lowercase/uppercase, and special characters; dictionary file

mysql官網密碼策略詳細說明:

在/etc/my.cnf檔案新增validate_password_policy配置,指定密碼策略

# 選擇0(low),1(medium),2(strong)其中一種,選擇2需要提供密碼字典檔案

validate_password_policy=0

如果不需要密碼策略,新增my.cnf檔案中新增如下配置禁用即可:

validate_password = off重新啟動mysql服務使配置生效:

systemctl restart mysqld預設只允許root帳戶在本地登入,如果要在其它機器上連線mysql,必須修改root允許遠端連線,或者新增乙個允許遠端連線的帳戶,為了安全起見,我新增乙個新的帳戶:

mysql> grant all privileges on *.* to 'yangxin'@'%' identified by 'yangxin0917!' with grant option;修改/etc/my.cnf配置檔案,在[mysqld]下新增編碼配置,如下所示:

[mysqld]

character_set_server=utf8

init_connect='set names utf8'

重新啟動mysql服務,檢視資料庫預設編碼如下所示:

預設配置檔案路徑:

配置檔案:/etc/my.cnf

日誌檔案:/var/log//var/log/mysqld.log

服務啟動指令碼:/usr/lib/systemd/system/mysqld.service

socket檔案:/var/run/mysqld/mysqld.pid

Linux給使用者新增sudo許可權

linux給使用者新增sudo許可權 有時候,linux下面執行sudo命令,會提示類似 is not in the sudoers file.this incident will be reported.這裡,是使用者名稱,然後導致無法執行sudo命令,這時候,如下解決 進入超級使用者模式。也就是...

linux給使用者新增sudo許可權

linux給使用者新增sudo許可權 有時候,linux下面執行sudo命令,會提示類似 is not in the sudoers file.this incident will be reported.這裡,是使用者名稱,然後導致無法執行sudo命令,這時候,如下解決 進入超級使用者模式。也就是...

Linux給使用者新增sudo許可權

當使用者沒有加入sudoers組時,在linux下面執行sudo命令,會提示類似 is not in the sudoers file.this incident will be reported.然後導致無法執行sudo命令 這時候,如下解決 1 進入超級使用者模式。也就是輸入 su 系統會讓你輸...