最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux系統(tǒng)部署MySQL(mariadb)并進(jìn)行簡單的操作步驟

 更新時(shí)間:2026年05月27日 09:50:24   作者:冷莫溪  
MariaDB作為Mysql的一個(gè)分支,在開源項(xiàng)目中已經(jīng)廣泛使用,這篇文章主要介紹了Linux系統(tǒng)部署MySQL(mariadb)并進(jìn)行簡單的操作步驟,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

環(huán)境規(guī)劃

服務(wù)器版本

NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

關(guān)閉防火墻

systemctl stop firewalld
systemctl status firewalld

● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

關(guān)閉SElinux

直接在/root目錄輸入以下命令

setenforce 0

在/etc/selinux/config中設(shè)置selinux為disabled 

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled  #改為disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

阿里云源+epel源

yum repolist
已加載插件:fastestmirror
Determining fastest mirrors
 * base: mirrors.aliyun.com
 * epel: d2lzkl7pfhq30w.cloudfront.net
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
源標(biāo)識                                   源名稱                                                                 狀態(tài)
!base/7/x86_64                           CentOS-7 - Base - mirrors.aliyun.com                                   10,072
!epel/x86_64                             Extra Packages for Enterprise Linux 7 - x86_64                         13,791
!extras/7/x86_64                         CentOS-7 - Extras - mirrors.aliyun.com                                    526
!updates/7/x86_64                        CentOS-7 - Updates - mirrors.aliyun.com                                 6,173
repolist: 30,562

如果沒有epel源通過一下命令安裝

yum -y install epel-release

安裝mysql(mariadb)

1.制作mariadb源

cd /etc/yum.repos.d/ # 進(jìn)入目錄
vim mariadb.repo     # 編輯源文件

編輯內(nèi)容如下

[mariadb]
name=MariaDB
# baseurl=https://mirror.mariadb.org/yum/10.5/centos7-amd64
baseurl=https://mirror.mariadb.org/yum/10.11.17/rhel7-amd64/
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

2.安裝mysql(mariadb)

# 使用yum進(jìn)行安裝
yum -y  install MariaDB-server MariaDB-client

# 以下是安裝完成的狀態(tài)
已加載插件:fastestmirror, priorities
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * epel: d2lzkl7pfhq30w.cloudfront.net
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
10201 packages excluded due to repository priority protections
軟件包 MariaDB-server-10.11.9-1.el7.centos.x86_64 已安裝并且是最新版本
軟件包 MariaDB-client-10.11.9-1.el7.centos.x86_64 已安裝并且是最新版本
無須任何處理

3.啟動(dòng)mysql(mariadb)

systemctl start mariadb #啟動(dòng)服務(wù)
systemctl enable mariadb #設(shè)置開機(jī)啟動(dòng)
systemctl restart mariadb #重新啟動(dòng)

使用ss查看是否啟動(dòng)

ss -taulanp | grep mariadb

mysql(mariadb)停止命令

systemctl stop mariadb #停止MariaDB

mysql(mariadb)設(shè)置

登錄mysql

直接輸入mysql或者輸入mysql -uroot -p登錄

方式一:mysql直接登錄

輸入mysql 直接進(jìn)入不用輸入初始密碼

方式二:輸入輸入mysql -uroot -p進(jìn)行登錄

輸入mysql -uroot -p進(jìn)行登錄 —— 初始密碼為1

修改 MySQL root 密碼的方法

方法一:通過 MySQL 命令行修改

登錄 MySQL 服務(wù)器后執(zhí)行以下命令:

use mysql;
update user set authentication_string=password('新密碼') where user='root';
flush privileges;
exit;

重新登錄驗(yàn)證:

mysql -u root -p

方法二:使用 mysqladmin 工具修改

在 Linux 終端執(zhí)行:

mysqladmin -u root -p password '新密碼'

注意事項(xiàng)

  • MySQL 5.7+ 版本使用 authentication_string 字段存儲密碼
  • 修改密碼后必須執(zhí)行 flush privileges 使更改生效
  • 密碼應(yīng)設(shè)置為強(qiáng)密碼,避免使用簡單密碼如'123456'
  • 生產(chǎn)環(huán)境建議定期修改密碼并做好備份

密碼策略建議

  • 啟用 validate_password 插件加強(qiáng)密碼復(fù)雜度
  • 定期輪換密碼(建議每90天)
  • 不同環(huán)境使用不同密碼
  • 避免在腳本中明文存儲密碼

設(shè)置utf8字符集

1.先登錄mysql輸入\s查看查看初始狀態(tài)

MariaDB [(none)]> \s
--------------
mysql  Ver 15.1 Distrib 10.11.9-MariaDB, for Linux (x86_64) using readline 5.1

Connection id:          4
Current database:
Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server:                 MariaDB
Server version:         10.11.9-MariaDB MariaDB Server
Protocol version:       10
Connection:             Localhost via UNIX socket
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    utf8mb3
Conn.  characterset:    utf8mb3
UNIX socket:            /var/lib/mysql/mysql.sock
Uptime:                 2 min 42 sec

Threads: 1  Questions: 7  Slow queries: 0  Opens: 17  Open tables: 10  Queries per second avg: 0.043
--------------

2.退出mysql(mariadb)

MariaDB [(none)]> quit;
Bye

3.編輯文件/etc/my.cnf

vim /etc/my.cnf

加入配置

[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect = 'SET NAMES utf8mb4'
skip-character-set-client-handshake

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

4.重啟mariadb(mysql)

 systemctl restart mariadb

5.登錄mysql,輸入\s查看

MariaDB [(none)]> \s
--------------
mysql  Ver 15.1 Distrib 10.11.9-MariaDB, for Linux (x86_64) using readline 5.1

Connection id:          3
Current database:
Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server:                 MariaDB
Server version:         10.11.9-MariaDB MariaDB Server
Protocol version:       10
Connection:             Localhost via UNIX socket
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8mb4
Conn.  characterset:    utf8mb4
UNIX socket:            /var/lib/mysql/mysql.sock
Uptime:                 56 sec

Threads: 1  Questions: 4  Slow queries: 0  Opens: 17  Open tables: 10  Queries per second avg: 0.071
--------------

mysql基礎(chǔ)命令

庫和表及查詢操作

1.查看有那些庫

show databases;

2.切換或選擇要操作的數(shù)據(jù)庫

use mysql;

3.查看表

show tables;

4.查看表結(jié)構(gòu)

方式一

describe user; --簡寫desc user;

方式二

show create table user\G;

        desc和show create table 都是用來查看表結(jié)構(gòu)的但側(cè)重點(diǎn)不通、使用場景等不同。

         DESC 適合快速瀏覽字段的基礎(chǔ)信息,SHOW CREATE TABLE 適合獲取完整的建表語句和所有底層細(xì)節(jié)。

5.確認(rèn)當(dāng)前所處的數(shù)據(jù)庫

select database();

庫和表及用戶創(chuàng)建授權(quán)的基礎(chǔ)操作

1.創(chuàng)建數(shù)據(jù)庫

create database 庫名;

2.創(chuàng)建數(shù)據(jù)表

先切換選擇創(chuàng)建好的數(shù)據(jù)庫

use auth;

再進(jìn)行數(shù)據(jù)庫的創(chuàng)建

創(chuàng)建users表

create table users(
    user_name char(16) not null,       -- 創(chuàng)建用戶名字段
    user_passwd char(48) default '',     -- 創(chuàng)建用戶密碼字段
    primary key (user_name));          -- 設(shè)置主鍵

創(chuàng)建yonghu表

create table yonghu(
    name char(10), -- 創(chuàng)建用戶名字段
    passwd char(10), -- 創(chuàng)建用戶密碼字段
    primary key (name)); -- 設(shè)置主鍵

3.插入數(shù)據(jù)

insert into users values('冷莫溪','123.com'); 

使用select查看是否插入

select * from users;

4.用戶的基本操作

(1)創(chuàng)建用戶

create user lengmx identified by '123456';

(2)查詢用戶

方式一:使用select命令查詢

select user,host,password from mysql.user;

方式二:使用show grants查詢

show grants for 'lengmx'@'%';

(3)用戶授權(quán)

授予權(quán)力,例如select

grant select on auth.* to 'lengmx'@'%';

使用show進(jìn)行查詢

show grants for 'lengmx'@'%';

(4)撤銷用戶授權(quán)

revoke select on auth.* from lengmx;
show grants for 'lengmx'@'%';

mysql備份與恢復(fù)

mysqldump 基礎(chǔ)功能

mysqldump 是 MySQL 官方提供的邏輯備份工具,通過生成標(biāo)準(zhǔn) SQL 語句文件實(shí)現(xiàn)數(shù)據(jù)庫結(jié)構(gòu)和數(shù)據(jù)的導(dǎo)出。支持單庫、多庫、單表或全庫備份,默認(rèn)輸出到標(biāo)準(zhǔn)輸出,需通過重定向保存為文件。

備份操作

1.在CentOS7.9中創(chuàng)建備份目錄

mkdir -pv /opt/mysql_bak

2.備份單個(gè)數(shù)據(jù)庫

把之前創(chuàng)建的數(shù)據(jù)庫auth備份到/opt/mysql_bak/ mysql_bak中

mysqldump -uroot -p auth > /opt/mysql_bak/auth_db.sql

驗(yàn)證備份文件:

使用wc和cat進(jìn)行查看

wc -l < /opt/mysql_bak/auth_db.sql
cat /opt/mysql_bak/auth_db.sql

3.備份特定數(shù)據(jù)表

把之前創(chuàng)建的數(shù)據(jù)表user備份到/opt/mysql_bak/mysql_bak中

mysqldump -uroot -p auth users > /opt/mysql_bak/users_bak.sql

驗(yàn)證命令與上面數(shù)據(jù)庫備份相同。

4.全庫備份

mysqldump -uroot -p --all-databases > /opt/mysql_bak/alldb.sql

5.查看數(shù)據(jù)庫實(shí)際占用空間

du -sh /var/lib/mysql/

數(shù)據(jù)恢復(fù)操作

1.進(jìn)入目標(biāo)數(shù)據(jù)庫

mysql -uroot -p
use auth;
show tables;

2.刪除測試表

DROP TABLE users;

查看刪除后的表是否還在

show tables;

3.從備份恢復(fù)表

進(jìn)入備份目錄cd /opt/mysql_bak/,使用之前備份特定數(shù)據(jù)庫的文件,然后恢復(fù)表  

之前備份的命令進(jìn)行改寫(mysqldump換成mysql, > 換成 <)

mysql -uroot -p auth < /opt/mysql_bak/users_bak.sql;

驗(yàn)證恢復(fù):

SHOW TABLES;
SELECT * FROM users;

關(guān)鍵注意事項(xiàng)

  • 備份時(shí)使用 > 重定向輸出,恢復(fù)時(shí)使用 < 重定向輸入
  • 恢復(fù)操作需確保目標(biāo)數(shù)據(jù)庫已存在(空庫亦可)
  • 全庫備份包含系統(tǒng)庫,恢復(fù)時(shí)可能需特殊權(quán)限
  • 大表備份建議添加 --single-transaction 參數(shù)避免鎖表

常用參數(shù)擴(kuò)展

  • --no-data 僅備份結(jié)構(gòu)
  • --add-drop-table 在創(chuàng)建表前添加刪除語句
  • --skip-lock-tables 跳過鎖表(可能影響一致性)
  • --where 條件導(dǎo)出部分?jǐn)?shù)據(jù)

備份文件可通過壓縮減少空間占用:

mysqldump -uroot -p dbname | gzip > backup.sql.gz

總結(jié) 

到此這篇關(guān)于Linux系統(tǒng)部署MySQL(mariadb)并進(jìn)行簡單的操作步驟的文章就介紹到這了,更多相關(guān)Linux部署MySQL內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

延长县| 梁河县| 镇安县| 长垣县| 安远县| 长沙县| 长寿区| 日土县| 乌拉特中旗| 安岳县| 十堰市| 平舆县| 浮山县| 体育| 故城县| 新和县| 塔城市| 龙州县| 永丰县| 柏乡县| 溧阳市| 富顺县| 桓台县| 枞阳县| 车致| 依兰县| 炎陵县| 河曲县| 瑞金市| 长岭县| 边坝县| 庆元县| 郯城县| 锡林浩特市| 云梦县| 诸城市| 金坛市| 轮台县| 施甸县| 井冈山市| 黎川县|