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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql怎么加固_mysql安装及加固

發(fā)布時間:2025/3/12 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql怎么加固_mysql安装及加固 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

mysql安裝

查看是否安裝mysql

我們先看一下有沒有安裝mysql

yum list installed mysql | grep mysql

本地只安裝了php鏈接mysql的庫,沒有安裝mysql

如果有安裝,可以使用安裝的或者卸載了重新安裝

添加yum源

去mysql官網(wǎng)查找

下面我就來安裝下yum源

sudo rpm -ivh https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm

我們再看一下yum源是否安裝成功

yum repolist | grep mysql

可以看到已經(jīng)有mysql的yum源了

查看mysql的版本

yum repolist all | grep mysql

可以看到很多被禁用了,現(xiàn)在比較穩(wěn)定的最高穩(wěn)定版本是8.0了;

我們就安裝這個吧

yum安裝

sudo yum install mysql-community-server

下載安裝完成,

查看下安裝目錄

whereis mysql

啟動/關閉mysql

sudosystemctl start mysqld

systemctl status mysqld//查看mysql的狀態(tài)

顯示是啟動了。

查看初始密碼(如無內容直接跳過)

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

測試下是否真的啟動成功

sudo mysql -u root -p

使用上一步得到的初始化密碼登錄,若沒有初始化密碼,則直接回車即可

修改root密碼

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '密碼';

刷新MySQL的系統(tǒng)權限相關表

mysql> flush privileges;

退出登錄,試下新密碼登錄,登錄成功即完成了。

php鏈接數(shù)據(jù)庫

php代碼如下:

{die('Could not connect: ' . mysql_error());

}else{echo "login success.";

}//some code

//mysql_close($con);

phpinfo();?>

提示:Could not connect: Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_password.so: cannot openshared object file: No such file or directory

caching_sha2_password時mysql8默認的認證方式,好像使安裝的mysql沒有包含這個插件,以前版本的mysql使用的是mysql_native_password,我們修改為這個模式看看

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密碼';

刷新MySQL的系統(tǒng)權限相關表

mysql> flush privileges;

鏈接mysql成功。

mysql基本操作

1)數(shù)據(jù)庫相關SQL的語句a)顯示當前用戶下的數(shù)據(jù)庫show databases;b)創(chuàng)建數(shù)據(jù)庫(語法參考? create database)create database pms;create database if not exists pms;create database if not exists pms character set utf8;

說明:在mysql中一個用戶下可以有很多數(shù)據(jù)庫(DB)

c)使用或打開數(shù)據(jù)庫? use database;? 查看當前正在使用的數(shù)據(jù)庫:select database();? d)刪除數(shù)據(jù)庫(語法? drop database)? drop database pms;? drop database if exists pms;

2)MySQL中表的相關操作?(DDL)a)創(chuàng)建表(語法? create table)create table if not exists pet(id int primary key auto_increment,name varchar(100) not null);當需要查看某張表的創(chuàng)建語句時,可以使用show create table pet當需要顯示表結構時可以使用:desc petb)修改表(語法?alter table);不作為重點,自己了解c)刪除表(語法?drop table)drop table if exists pet;

3)MySQL表中數(shù)據(jù)的操作?(DML)1)向表中寫入數(shù)據(jù)(insert)insert into pet values (null,'A');insert into pet(id,name) values (null,'B');insert into pet(name)values('C');insert into pet(name)values('D'),('E');2)查詢表中數(shù)據(jù)(select)select * from pet;select id,name from pet;select id,name from pet where id=10;

分頁查詢:limit 語句的應用(語法參考?select)? select * from pet limit 2; --2為row_count(表示要取幾條數(shù)據(jù))? select * from pet limit 4,2; --4表示offset,2表示 row_count? select * from pet limit 2 offset 4;

mysql加固

禁止 Mysql 以管理員帳號權限運行

以普通帳戶安全運行 mysqld,禁止以管理員帳號權限運行 MySQL 服務。在 /etc/my.cnf 配置文件中進行以下設置

user=mysql

口令安全

檢查賬戶默認密碼和弱密碼。口令長度需要至少八位,并包括數(shù)字、小寫字母、大寫字母和特殊符號四類中的至少兩種類型,且五次以內不得設置相同的口令。密碼應至少每 90 天進行一次更換。

下面命令修改密碼

mysql> update user set password=password('test!p3') where user='root';mysql> flush privileges;

弱密碼很容易被爆破,所以密碼復雜的要夠,生命周期要限制,定期更換。

關閉遠程訪問

這種僅限于應用和數(shù)據(jù)庫在同一臺主機的情況,如果不同主機,那就不能禁止遠程訪問了

關閉遠程訪問可以通過禁止遠程 TCP/IP 連接,通過在 MySQL 服務器的啟動參數(shù)中添加--skip-networking參數(shù)使 MySQL 服務不監(jiān)聽任何 TCP/IP 連接,增加安全性。

參考資料

總結

以上是生活随笔為你收集整理的mysql怎么加固_mysql安装及加固的全部內容,希望文章能夠幫你解決所遇到的問題。

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