Anonīms

Kā iestatīt MySQL saknes paroli, izmantojot

Kā iestatīt MySQL saknes paroli, izmantojot
Lielākā daļa Linux izplatījumu, ieskaitot CentOS / RHEL un Ubuntu / Debian, MySQL saknes paroli nenosaka automātiski. Tā kā MySQL saknes parole netiek automātiski iestatīta, var pieteikties MySQL konsolē kā sakne bez paroles. Tas nav ļoti labi drošībai.

Vietnē CentOS / RHEL jūs varat viegli palaist mysql_secure_installation komandu, lai iestatītu saknes paroli. Bet uz Ubuntu 20.04 LTS, šī metode nedarbojas, jo MySQL izmanto citu autentifikācijas spraudni sakne lietotājs.

Šis raksts parādīs, kā iestatīt MySQL saknes paroli CentOS 8 un Ubuntu 20.04 LTS Linux izplatīšana, izmantojot Ansible moduļus.

Priekšnoteikumi


Ja vēlaties izmēģināt šajā rakstā iekļautos piemērus,

1) Jūsu datorā jābūt instalētai programmai Ansible.

2) Jums ir jābūt vismaz CentOS / RHEL 8 resursdatoram vai Ubuntu 20.04 LTS resursdators ir konfigurēts iespējamai automatizācijai.

Vietnē LinuxHint ir daudz rakstu, kas veltīti Ansible instalēšanai un resursdatoru konfigurēšanai Ansible automatizācijai. Ja nepieciešams, varat tos pārbaudīt.

Projektu direktorijas iestatīšana

Pirms turpināt darbu, mēs izveidosim jaunu Ansible projekta direktoriju, lai lietas būtu mazliet sakārtotas.

Lai izveidotu projekta direktoriju mysql-root-pass / un visas nepieciešamās apakšdirektorijas (pašreizējā darba direktorijā), izpildiet šādu komandu:

$ mkdir -pv mysql-root-pass / playbooks, host_vars, group_vars

Kad projekta direktorijs ir izveidots, dodieties uz projekta direktoriju šādi:

$ cd mysql-root-pass /

Izveidojiet a saimniekiem krājuma fails:

$ nano saimnieki

Pievienojiet sava CentOS / RHEL 8 vai Ubuntu 20 resursdatora IP vai DNS nosaukumus.04 LTS resursdatori inventāra failā (viens resursdators katrā rindā), kā parādīts zemāk esošajā ekrānuzņēmumā.

Kad esat pabeidzis, saglabājiet failu, nospiežot + X, sekoja un .

Šeit esmu izveidojis divas grupas, centos8, un ubuntu20. The centos8 grupai ir mana CentOS 8 resursdatora DNS nosaukums, vm3.nodekite.com; un ubuntu20 grupai ir mana Ubuntu 20 DNS nosaukums.04 LTS saimnieks, vm7.nodekite.com.

Izveidojiet Ansible konfigurācijas failu iespējams.cfg projekta direktorijā šādi:

$ nano ansible.cfg

Ierakstiet šādas rindiņas iespējams.cfg fails:

[noklusējumi]
inventārs = saimnieki
host_key_checking = Nepatiesa

Kad esat pabeidzis, saglabājiet iespējams.cfg failu, nospiežot + X, sekoja un .

Mēģiniet pingēt visus resursdatorus, kurus esat pievienojis savā saimniekiem krājuma fails:

$ ansible all -u ansible -m ping

Kā redzat, mans CentOS 8 resursdators (vm3.nodekite.com) un Ubuntu 20.04 LTS resursdators (vm7.nodekite.com) ir pieejami.

MySQL instalēšana un saknes paroles iestatīšana CentOS / RHEL 8

Šajā sadaļā tiks parādīts, kā instalēt MySQL datu bāzes serveri un iestatīt saknes paroli CentOS 8, izmantojot Ansible. Šai pašai procedūrai vajadzētu darboties arī ar RHEL 8.

Izveidojiet jauno Ansible playbook install_mysql_centos8.yaml iekš playbooks / direktorijā:

$ nano playbooks / install_mysql_centos8.yaml

Ierakstiet šādas rindiņas install_mysql_centos8.yaml fails:

- saimnieki: centos8
lietotājs: ansible
kļūt: Patiesi
uzdevumi:
- nosaukums: Atjauniniet DNF pakotnes krātuves kešatmiņu
dnf:
update_cache: True
- nosaukums: Instalējiet MySQL serveri CentOS 8
dnf:
nosaukums: mysql-server
stāvoklis: klāt
- nosaukums: Instalējiet MySQL klientu CentOS 8
dnf:
nosaukums: mysql
stāvoklis: klāt
- nosaukums: Pārliecinieties, vai darbojas mysqld pakalpojums
apkalpošana:
nosaukums: mysqld
stāvoklis: sākts
iespējots: taisnība

- nosaukums: Instalējiet python3-PyMySQL bibliotēku
dnf:
nosaukums: python3-PyMySQL
stāvoklis: klāt

Kad esat pabeidzis, nospiediet + X, sekoja un , lai saglabātu install_mysql_centos8.yaml failu.

Zemāk esošā rindiņa Ansiblei saka palaist atskaņošanas grāmatu install_mysql_centos8.yaml katram uzņēmējam centos8 grupa.

Šeit esmu definējis 5 uzdevumus.

Pirmais uzdevums atjaunina CentOS 8 DNF pakotnes krātuves kešatmiņu, izmantojot Ansible dnf modulis.

Otrais uzdevums instalē MySQL servera pakotni mysql-serveris izmantojot Ansible dnf modulis.

Trešais uzdevums instalē MySQL klienta pakotni mysql izmantojot Ansible dnf modulis.

Ceturtais uzdevums nodrošina, ka mysqld pakalpojums darbojas un ka tas ir pievienots sistēmas startēšanai, lai tas automātiski sāktu sāknēšanu.

Piektais uzdevums instalē Python 3 MySQL bibliotēku pymysql. Tas ir nepieciešams, lai piekļūtu MySQL no Ansible.

Palaidiet install_mysql_centos8.yaml playbook šādi:

$ ansible-playbook playbooks / install_mysql_centos8.yaml

Kā redzat, spēļu grāmata install_mysql_centos8.yaml veiksmīgi skrēja.

CentOS 8 resursdatorā es varu piekļūt MySQL kā sakne lietotājam bez paroles, kā redzat zemāk redzamajā ekrānuzņēmumā:

$ sudo mysql -u sakne

Tagad, kad MySQL serveris ir instalēts, ir pienācis laiks iestatīt MySQL servera saknes paroli.

Izveidojiet jauno grupas mainīgā failu centos8 (iekš grupa_vars / direktorija) centos8 grupa:

$ nano group_vars / centos8

Pievienojiet jaunu mainīgo mysql_pass ar root paroli (manā gadījumā, noslēpums) kuru vēlaties iestatīt, kā parādīts zemāk esošajā ekrānuzņēmumā.

Kad esat pabeidzis, nospiediet + X, sekoja un , lai saglabātu failu.

Izveidojiet jaunu atskaņošanas grāmatu set_root_pass_centos8.yaml ar šādu komandu:

$ nano playbooks / set_root_pass_centos8.yaml

Ierakstiet šādas rindiņas set_root_pass_centos8.yaml fails:

- saimnieki: centos8
lietotājs: ansible
kļūt: Patiesi
uzdevumi:
- nosaukums: iestatiet MySQL saknes paroli
mysql_user:
login_host: 'localhost'
login_user: 'sakne'
pieslēgšanās parole: "
nosaukums: 'root'
parole: 'mysql_pass'
stāvoklis: klāt

Kad esat pabeidzis, nospiediet + X, sekoja un , lai saglabātu set_root_pass_centos8.yaml failu.

Šajā spēļu grāmatā tiek izmantots mysql_user Iespējams modulis MySQL saknes paroles iestatīšanai.

The login_host, login_user, un pieslēgšanās parole opcijas mysql_user Anulējamais modulis tiek izmantots, lai attiecīgi iestatītu pašreizējo MySQL pieteikšanās resursdatora nosaukumu, lietotājvārdu un paroli. Pēc noklusējuma MySQL pieteikšanās resursdatora nosaukums (login_host) ir vietējais saimnieks, pieteikšanās lietotājvārds (login_user) ir sakne, un pieteikšanās paroli (pieslēgšanās parole) ir tukšs () uz CentOS 8.

The paroli opcija mysql_user Šeit var izmantot jaunu moduli, lai iestatītu jaunu MySQL saknes paroli. MySQL saknes parole būs mysql_pass grupas mainīgais, kas tika iestatīts agrāk.

Palaidiet atskaņošanas grāmatu set_root_pass_centos8.yaml ar šādu komandu:

$ ansible-playbook playbooks / set_root_pass_centos8.yaml

Spēļu grāmata veiksmīgi darbojās, kā redzams zemāk redzamajā ekrānuzņēmumā:

Kā redzat, es vairs nevaru pieteikties MySQL serverī bez root paroles.

Lai pieteiktos MySQL serverī kā sakne lietotājam ar paroli, savā CentOS 8 resursdatorā izpildiet šādu komandu:

$ sudo mysql -u root -p

Ievadiet saknes paroli, kuru esat iestatījis, izmantojot Ansible, un nospiediet .

Jums jāpiesakās MySQL serverī kā sakne lietotājs.

MySQL instalēšana un saknes paroles iestatīšana Ubuntu 20.04 LTS

Šajā sadaļā tiks parādīts, kā instalēt MySQL datu bāzes serveri un iestatīt saknes paroli Ubuntu 20.04 LTS, izmantojot Ansible.

Izveidojiet jaunu Ansible playbook install_mysql_ubuntu20.yaml iekš playbooks / direktorijā:

$ nano playbooks / install_mysql_ubuntu20.yaml

Ierakstiet šādas rindiņas install_mysql_ubuntu20.yaml fails:

- saimnieki: ubuntu20
lietotājs: ansible
kļūt: Patiesi
uzdevumi:
- nosaukums: Atjauniniet APT pakotnes krātuves kešatmiņu
apt:
update_cache: True
- nosaukums: Instalējiet MySQL serveri Ubuntu 20.04 LTS
apt:
nosaukums: mysql-server
stāvoklis: klāt
- nosaukums: Instalējiet MySQL klientu Ubuntu 20.04 LTS
apt:
nosaukums: mysql-client
stāvoklis: klāt
- nosaukums: Pārliecinieties, vai darbojas mysql pakalpojums
apkalpošana:
nosaukums: mysql
stāvoklis: sākts
iespējots: taisnība
- nosaukums: Instalējiet python3-pymysql bibliotēku
apt:
nosaukums: python3-pymysql
stāvoklis: klāt

Kad esat pabeidzis, nospiediet + X, sekoja un , lai saglabātu install_mysql_ubuntu20.yaml failu.

Nākamajā rindiņā Ansible ir norādīts palaist atskaņošanas grāmatu install_mysql_ubuntu20.yaml katram uzņēmējam ubuntu20 grupa:

Šeit esmu definējis 5 uzdevumus.

Pirmais uzdevums atjaunina Ubuntu 20 APT pakotnes krātuves kešatmiņu.04 LTS, izmantojot Ansible trāpīgs modulis.

Otrais uzdevums instalē MySQL servera pakotni mysql-serveris izmantojot Ansible trāpīgs modulis.

Trešais uzdevums instalē MySQL klienta pakotni mysql izmantojot Ansible trāpīgs modulis.

Ceturtais uzdevums nodrošina, ka mysql pakalpojums darbojas un ka tas ir pievienots sistēmas startēšanai, lai tas automātiski sāktu sāknēšanu.

Piektais uzdevums instalē Python 3 MySQL bibliotēku pymysql. Tas ir nepieciešams, lai piekļūtu MySQL no Ansible.

Palaidiet install_mysql_ubuntu20.yaml playbook šādi:

$ ansible-playbook playbooks / install_mysql_ubuntu20.yaml

Kā redzat, spēļu grāmata install_mysql_ubuntu20.yaml veiksmīgi skrēja.

Manā Ubuntu 20.04 LTS resursdators, es varu piekļūt MySQL kā sakne lietotājam bez paroles, kā redzat zemāk redzamajā ekrānuzņēmumā.

$ sudo mysql -u sakne

Tagad, kad MySQL serveris ir instalēts, ir pienācis laiks iestatīt MySQL servera saknes paroli.

Izveidojiet jaunu grupas mainīgā failu ubuntu20 (iekš grupa_vars / direktorija) ubuntu20 grupa:

$ nano group_vars / ubuntu20

Pievienojiet jaunu mainīgo, mysql_pass, ar root paroli (manā gadījumā, noslēpums), kuru vēlaties iestatīt, kā parādīts zemāk redzamajā ekrānuzņēmumā.

Kad esat pabeidzis, nospiediet + X, sekoja un , lai saglabātu failu.

Izveidojiet jaunu atskaņošanas grāmatu set_root_pass_ubuntu20.yaml ar šādu komandu:

$ nano playbooks / set_root_pass_ubuntu20.yaml

Ierakstiet šādas rindiņas set_root_pass_ubuntu20.yaml fails:

- saimnieki: ubuntu20
lietotājs: ansible
kļūt: Patiesi
uzdevumi:
- nosaukums: Mainiet MySQL saknes lietotāja autentifikācijas spraudni uz mysql_native_password
apvalks: mysql -u root -e 'ATJAUNINĀT mysql.lietotāja SET spraudnis = "mysql_native_password"
WHERE user = "root" UN host = "localhost" '
- nosaukums: Flush privilēģijas
apvalks: mysql -u sakne -e 'FLUSH PRIVILEGES'
- nosaukums: iestatiet MySQL saknes paroli
mysql_user:
login_host: 'localhost'
login_user: 'sakne'
pieslēgšanās parole: "
nosaukums: 'root'
parole: 'mysql_pass'
stāvoklis: klāt

Kad esat pabeidzis, nospiediet + X, sekoja un , lai saglabātu set_root_pass_ubuntu20.yaml failu.

Šeit esmu definējis trīs uzdevumus.

Pirmais uzdevums maina MySQL autentifikācijas spraudni sakne lietotājs no auth_socket uz mysql_native_password.

Otrais uzdevums pārlādē visas privilēģijas.

Trešajā uzdevumā tiek izmantots mysql_user Iespējams modulis, lai iestatītu MySQL saknes paroli.

Trešajā uzdevumā login_host, login_user, un pieslēgšanās parole opcijas mysql_user Anulējamais modulis tiek izmantots, lai attiecīgi iestatītu pašreizējo MySQL pieteikšanās resursdatora nosaukumu, lietotājvārdu un paroli. Pēc noklusējuma MySQL pieteikšanās resursdatora nosaukums (login_host) ir vietējais saimnieks, pieteikšanās lietotājvārds (login_user) ir sakne, un pieteikšanās paroli (pieslēgšanās parole) ir tukšs () sistēmā.

Lūk, paroli opcija mysql_user Jauns MySQL root paroles iestatīšanai tiek izmantots modulis. MySQL saknes parole būs mysql_pass grupas mainīgais, kuru es iestatīju iepriekš group_vars / ubuntu20 failu.

Palaidiet atskaņošanas grāmatu set_root_pass_ubuntu20.yaml ar šādu komandu:

$ ansible-playbook playbooks / set_root_pass_ubuntu20.yaml

Spēļu grāmata veiksmīgi darbojās, kā redzat zemāk redzamajā ekrānuzņēmumā:

Kā redzat, es vairs nevaru pieteikties MySQL serverī bez root paroles.

$ sudo mysql -u sakne

Lai pieteiktos MySQL serverī kā root lietotājs ar iestatīto paroli, palaidiet šo komandu savā Ubuntu 20.04 LTS resursdators:

$ sudo mysql -u root -p

Ievadiet saknes paroli, kuru esat iestatījis, izmantojot Ansible, un nospiediet .

Jums vajadzētu būt pieteicies MySQL serverī kā root lietotājam.

Secinājums

Šis raksts parādīja, kā instalēt MySQL serveri un iestatīt MySQL saknes paroli CentOS 8 un Ubuntu 20.04 LTS Linux izplatīšana, izmantojot Ansible. Šajā rakstā tika izmantots mysql_user Iespējams modulis MySQL saknes paroles iestatīšanai. Varat izmantot šo moduli, lai mainītu MySQL saknes paroli, izveidotu jaunus MySQL lietotājus un daudz vairāk lietotāju pārvaldības funkciju.

Lai iegūtu vairāk informācijas par mysql_user moduli, pārbaudiet mysql_user moduļa oficiālo dokumentāciju.

5 labākie ergonomiskie datoru peles izstrādājumi Linux
Vai ilgstoša datora lietošana izraisa sāpes plaukstas locītavā vai pirkstos? Vai jūs ciešat no stīvām locītavām un jums pastāvīgi ir jāspiež rokas? Va...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
Izmantojot X-Mouse Button Control, atšķirīgi mainiet peles pogas atšķirīgai programmatūrai
Varbūt jums ir nepieciešams rīks, kas varētu mainīt peles vadību ar katru lietoto lietojumprogrammu. Ja tas tā ir, varat izmēģināt lietojumprogrammu a...