日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Shell离线脚本安装mysql、更新密码

發(fā)布時間:2025/3/15 数据库 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Shell离线脚本安装mysql、更新密码 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目錄

手動操作

Shell腳本操作


手動操作

CentOS7的yum源中默認(rèn)好像是沒有mysql的。為了解決這個問題,我們要先下載mysql的repo源。

1. 下載mysql的repo源

wget?http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

2. 安裝mysql-community-release-el7-5.noarch.rpm包

sudo?rpm?-ivh?mysql-community-release-el7-5.noarch.rpm

安裝這個包后,會獲得兩個mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。

3. 安裝mysql

sudo?yum?install?mysql-server

根據(jù)步驟安裝就可以了,不過安裝完成后,沒有密碼,需要重置密碼。

4. 啟動myslq

service mysql start# 設(shè)置開機(jī)啟動 systemctl enable mysqld.service

5. 重置密碼

重置密碼前,首先要登錄

mysql?-u?root

登錄時有可能報這樣的錯:ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的訪問權(quán)限問題。下面的命令把/var/lib/mysql的擁有者改為當(dāng)前用戶:

sudo?chown?-R?openscanner:openscanner?/var/lib/mysql

然后,重啟服務(wù):

service?mysqld?restart

接下來登錄重置密碼:

mysql?-u?root mysql?>?use?mysql; mysql?>?update?user?set?password=password(‘123456‘)?where?user=‘root‘; mysql?>?exit;

6. 登錄

mysql -hlocalhost -uroot -p-h數(shù)據(jù)庫主機(jī) -u用戶 -p密碼 -P端口號(大寫P)

Shell腳本操作

1. 首先下載離線包(正常5.6版本12個離線包)

yum --downloadonly --downloaddir=/opt/mysql install mysql-devel mysql-server

2. 安裝離線包

rpm -ivh /opt/mysql/*.rpm --force --nodeps

3. 啟動mysql并設(shè)置開機(jī)啟動

service mysql start# 設(shè)置開機(jī)啟動 systemctl enable mysqld.service

4. shell(version==5.6)

#!/bin/sh# @author: 爸爸 # @created: 2021.06.22mysql_username="root" mysql_password="" default_mysql_password="123456" chage_mysql_password="update user set password=password('$default_mysql_password') where user='root';" update_mysql_password="flush privileges;"mysql -u $mysql_username $mysql_password <<EOF use mysql; $chage_mysql_password $update_mysql_password exit EOF if [ $? -eq 0 ];thenecho -e "\033[36;1mInstall and update mysql success! \033[0m" elseecho -e "\033[36;1mInstall and update mysql fail! \033[0m" fi

(version==5.7)

#!/bin/sh# @author: zhaoyun # @created: 2021.06.22mysql_cnf="/etc/my.cnf" mysql_passwd="asdasd234234"init_one(){cat /dev/null > $mysql_cnfecho "[mysqld]" >> $mysql_cnfecho "datadir=/var/lib/mysql" >> $mysql_cnfecho "socket=/var/lib/mysql/mysql.sock" >> $mysql_cnfecho "symbolic-links=0" >> $mysql_cnfecho "log-error=/var/log/mysqld.log" >> $mysql_cnfecho "pid-file=/var/run/mysqld/mysqld.pid" >> $mysql_cnfecho "skip-grant-tables=1" >> $mysql_cnf }init_two(){cat /dev/null > $mysql_cnfecho "[mysqld]" >> $mysql_cnfecho "datadir=/var/lib/mysql" >> $mysql_cnfecho "socket=/var/lib/mysql/mysql.sock" >> $mysql_cnfecho "symbolic-links=0" >> $mysql_cnfecho "log-error=/var/log/mysqld.log" >> $mysql_cnfecho "pid-file=/var/run/mysqld/mysqld.pid" >> $mysql_cnf }init_one service mysqld restart mysql -uroot <<EOF flush privileges; ALTER USER 'root'@'localhost' IDENTIFIED BY '$mysql_passwd'; quit EOF if [ $? -eq 0 ];thenecho -e "\033[36;1m[+] Install and update mysql success! \033[0m" elseecho -e "\033[36;1m[-] Install and update mysql fail! \033[0m" fi init_two service mysqld restart

5. 創(chuàng)建數(shù)據(jù)庫,已有就刪除

#!/bin/sh# @author: 爸爸 # @created: 2021.06.22if [ `id -u` -ne 0 ] then echo "[-] Please re-run as root." exit 1 firecreate_aaaaaa() {mysql -h 127.0.0.1 -uroot -p1234 2>/dev/null <<EOFdrop database if exists aaaaaa;create database aaaaaa; EOF }echo "[+] create aaaaaa database" recreate_aaaaaa;

總結(jié)

以上是生活随笔為你收集整理的Shell离线脚本安装mysql、更新密码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。