MySQL 基礎概念 基礎配置 密碼破解

2022-08-28 16:33:17 字數 4278 閱讀 5332

mysql是什麼

mysql就是乙個基於socket編寫的c/s架構的軟體。

客戶端軟體

mysql自帶:如mysql命令,mysqldump命令等

python模組:如pymysql

資料庫管理軟體分類

分兩大類:

關係型:如sqllite,db2,oracle,access,sql server,mysql,注意:sql語句通用

非關係型:mongodb,redis,memcache

可以簡單的理解為:

關係型資料庫需要有表結構

非關係型資料庫是key-value儲存的,沒有表結構

二進位制rpm包安裝

yum -y install mysql-server mysql

2、解壓

如果想要讓mysql安裝在指定目錄,那麼就將解壓後的資料夾移動到指定目錄,如:c:\mysql-5.7.16-winx64

3、新增環境變數

【右鍵計算機】--》【屬性】--》【高階系統設定】--》【高階】--》【環境變數】--》【在第二個內容框中找到 變數名為path 的一行,雙擊】 --> 【將mysql的bin目錄路徑追加到變值值中,用 ; 分割】

4、初始化

mysqld --initialize-insecure

5、啟動mysql服務

mysqld # 啟動mysql服務

6、啟動mysql客戶端並連線mysql服務

mysql -u root -p # 連線mysql伺服器

將mysql服務製作成windows服務

注意:--install前,必須用mysql啟動命令的絕對路徑

製作mysql的windows服務,在終端執行此命令:"c:\mysql-5.7.16-winx64\bin\mysqld" --install

移除mysql的windows服務,在終端執行此命令:"c:\mysql-5.7.16-winx64\bin\mysqld" --remove

註冊成服務之後,以後再啟動和關閉mysql服務時,僅需執行如下命令:

【啟動mysql服務】net start mysql

【關閉mysql服務】net stop mysql

方法一:刪除授權庫mysql,重新初始化

[root@egon ~]# rm -rf /var/lib/mysql/mysql #所有授權資訊全部丟失!!!

[root@egon ~]# systemctl restart mariadb

[root@egon ~]# mysql

方法二:啟動時,跳過授權庫

[root@egon ~]# vim /etc/my.cnf #mysql主配置檔案

[mysqld]

skip-grant-table

[root@egon ~]# systemctl restart mariadb

[root@egon ~]# mysql

mariadb [(none)]update mysql.user set password=password("123") where user="root" and host="localhost";

mariadb [(none)]flush privileges;

mariadb [(none)]\q

[root@egon ~]# #開啟/etc/my.cnf去掉skip-grant-table,然後重啟

[root@egon ~]# systemctl restart mariadb

[root@egon ~]# mysql -u root -p123 #以新密碼登入

方式一

1 關閉mysql

2 在cmd中執行:mysqld --skip-grant-tables

3 在cmd中執行:mysql

4 執行如下sql:

update mysql.user set authentication_string=password('') where user = 'root';

flush privileges;

5 tskill mysqld #或taskkill -f /pid 7832

6 重新啟動mysql

方式二

關閉mysql,可以用tskill mysqld將其殺死

在解壓目錄下,新建mysql配置檔案my.ini

my.ini內容,指定

[mysqld]

skip-grant-tables

4.啟動mysqld

5.在cmd裡直接輸入mysql登入,然後操作

update mysql.user set authentication_string=password('') where user='root and host='localhost';

flush privileges;

6.注釋my.ini中的skip-grant-tables,然後啟動myqsld,然後就可以以新密碼登入了

強調:配置檔案中的注釋可以有中文,但是配置項中不能出現中文

在mysql的解壓目錄下,新建my.ini,然後配置

1,在執行mysqld命令時,以上列配置會生效,即mysql服務啟動時生效

[mysqld]

;skip-grant-tables

port=3306

character_set_server=utf8

default-storage-engine=innodb

innodb_file_per_table=1

解壓的目錄

basedir=e:\mysql-5.7.19-winx64

data目錄

datadir=e:\my_data #在mysqld --initialize時,就會將初始資料存入此處指定的目錄,在初始化之後,啟動mysql時,就會去這個目錄裡找資料

2, 針對客戶端命令的全域性配置,當mysql客戶端命令執行時,下列配置生效

[client]

port=3306

default-character-set=utf8

user=root

password=123

3,只針對mysql這個客戶端的配置,2中的是全域性配置,而此處的則是只針對mysql這個命令的區域性配置

[mysql]

;port=3306

;default-character-set=utf8

user=egon

password=4573

!!!如果沒有[mysql],則使用者在執行mysql命令時的配置以[client]為準

#1. 修改配置檔案

[mysqld]

default-character-set=utf8

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

#mysql5.5以上:修改方式有所改動

[mysqld]

character-set-server=utf8

collation-server=utf8_general_ci

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

#2. 重啟服務

#3. 檢視修改結果:

\sshow variables like '%char%'

mysql基礎配置檔案 MySQL 配置基礎

mysql作為一種常見的資料庫管理系統 dbms 其自身的各種配置項極大的影響了其效能。所以有必要進行了解和學習。配置學習資源途徑 mysql配置 配置檔案位置 一般來說,mysql服務端配置檔案的預設位置是 etc my.cnf 或者 etc mysql my.cnf 也可以通過mysqld ve...

mysql(一) 基礎概念

mysql 為關係型資料庫 relational database management system 這種所謂的 關係型 可以理解為 的概念,乙個關係型資料庫由乙個或數個 組成,如圖所示的乙個 2.在安裝資料夾下找到 my small.ini 配置檔案,將其重新命名為 my.ini 開啟進行編輯,...

MySQL(一) 基礎概念

關係型資料庫是建立在關係模型上的,關係模型本質是若干個儲存資料的二維表,表的每一行稱為記錄 record 記錄是乙個邏輯意義上的資料。表的每一列稱為字段 column 同一表的每一行記錄都有相同的若干字段。字段定義了資料型別,以及是否被允許為null null表示字段資料不存在,乙個整型字段如果為n...