初識數據庫

1、 數據庫概述mysql

一、 數據庫redis

什麼是數據庫:數據庫,簡而言之可視爲電子化的文件櫃—存儲電子文件的處所,用戶能夠對文件中的數據運行新增、截取、更新、刪除等操做。sql

所謂「數據庫」系以必定方式儲存在一塊兒,能予多個用戶共享、具備儘量小的冗餘度,應與應用程序彼此獨立的數據集合mongodb

數據庫是存儲數據的地方數據庫

解決了幾大問題緩存

1, 直接操做硬盤上的文件效率低安全

2, 經過操做文件來讀寫數據很麻煩服務器

3, 咱們本身的電腦上寫的程序和咱們本身電腦上存儲的數據都在這一臺電腦上了,想和別人共享一個數據或者一個文檔也是比較麻煩的,而且若是和別人共享,那麼可能形成本身電腦的安全性變低了,可是公司內部的項目可能就會使用一些共同數據,這樣共享起來就很麻煩併發

4, 項目項目和數據若是都在一個電腦上,若是電腦崩了,數據就很麻煩,穩定性和安全性都不夠,咱們要把數據和項目分開管理memcached

 

數據庫管理系統:是爲管理數據庫而設計的電腦軟件系統,通常具備存儲、截取、安全保障、備份等基礎功能。數據庫管理系統能夠依據它所支持的數據庫模型來做分類

 

二、數據庫分類

兩大類:關係型數據庫,和非關係型數據庫

2.1關係型數據庫

經常使用的關係型數據庫:

Oracle 數據庫、mariaDB數據庫、SQL server、Access數據庫、其餘不經常使用關係型數據庫

2.2非關係型數據庫

Nosql非關係型數據庫小結:

1, NOSQL不是否認關係數據庫,而是做爲關係數據庫的一個重要的補充

2, NOSQL爲了高性能、高併發而生,忽略影響高性能,高併發的功能

3, NOSQL典型產品memcached(純內存),redis(持久化緩存),mongodb(文檔的數據庫

非關係型數據庫分爲4種:

(1)      鍵值:存儲數據庫

(2)      列存儲數據庫

(3)      面向文檔數據庫

(4)      圖形數據庫

常見的非關係型數據庫

(1)      mecached (2)redis (3)mongDB (4)Cassandra (5)其餘不經常使用非關係型數據庫

 

root用戶密碼設置及忘記密碼的解決方法

 方法1SET PASSWORD命令 
    首先登陸MySQL,使用mysql自帶的那個客戶端鏈接上mysql。 
    格式:mysql> set password for 用戶名@localhost = password('新密碼'); 
    例子:mysql> set password for root@localhost = password('123'); 

  方法2:用mysqladmin  (由於咱們將bin已經添加到環境變量了,這個mysqladmin也在bin目錄下,因此能夠直接使用這個mysqladmin功能,使用它來修改密碼)

    關於mysqladmin的介紹:是一個執行管理操做的客戶端程序。它能夠用來檢查服務器的配置和當前狀態、建立和刪除數據庫、修改用戶密碼等等的功能,雖然mysqladmin的不少功能經過使用MySQL自帶的mysql客戶端能夠搞定,可是有時候使用mysqladmin操做會比較簡單。
    格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼 
    例子:mysqladmin -uroot -p123456 password 123 

方法3:用UPDATE直接編輯那個自動的mysql庫中的user 
    首先登陸MySQL,鏈接上mysql服務端。 
    mysql> use mysql;   use mysql的意思是切換到mysql這個庫,這個庫是全部的用戶表和權限相關的表都在這個庫裏面,咱們進入到這個庫才能修改這個庫裏面的表。
    mysql> update user set password=password('123') where user='root' and host='localhost';   其中password=password('123') 前面的password是變量,後面的password是mysql提供的給密碼加密用的,咱們最好不要明文的存密碼,對吧,其中user是一個表,存着全部的mysql用戶的信息。

    mysql> flush privileges;  刷新權限,讓其生效,不然不生效,修改不成功。

  在忘記root密碼的時候,能夠這樣(注意:root密碼最好不要忘記,找地方記錄下來,否則若是是工做中大家使用的數據庫(不論是測試的仍是線上的,都是比較麻煩的事情,數據庫輕易不會讓你重啓的,不過做爲一個開發來說,你應該是沒法用root用戶的~~~

#在mysql的解壓目錄下,新建my.ini,而後配置
            #1. 在執行mysqld命令時,下列配置會生效,即mysql服務啓動時生效
            [mysqld]

            character_set_server=utf8
            collation-server=utf8_general_ci  #就是一個校對規則,通常默認都是這個,若是不是就改爲這個就能夠了,因此直接寫上就好了,這個規則後面咱們會講的~~~

            #2. 針對客戶端命令的全局配置,當mysql客戶端命令執行時,下列配置生效
            [client]
            default-character-set=utf8

            #3. 只針對mysql這個客戶端的配置,2中的是全局配置,而此處的則是隻針對mysql這個命令的局部配置
            [mysql]
            user=root
            password=666
            default-character-set=utf8

            #若是沒有[mysql],則用戶在使用mysql系統自帶的mysql客戶端來執行mysql命令時的配置以[client]爲準

          重啓mysql服務,讓配置文件生效:
            C:\WINDOWS\system32>net stop mysql
            MySQL 服務正在中止..
            MySQL 服務已成功中止。

            C:\WINDOWS\system32>net start mysql
            MySQL 服務正在啓動 .
            MySQL 服務已經啓動成功。

          而後鏈接進入mysql,再次查看編碼:
            C:\Users\chao>mysql -uroot -p
            Enter password: ***
            mysql> show variables like "%char%";
            +--------------------------+-------------------------------------------+
            | Variable_name | Value |
            +--------------------------+-------------------------------------------+
            | character_set_client | utf8 |
            | character_set_connection | utf8 |
            | character_set_database | utf8 |
            | character_set_filesystem | binary |
            | character_set_results | utf8 |
            | character_set_server | utf8 |
            | character_set_system | utf8 |
            | character_sets_dir | F:\jj\mysql-5.6.42-winx64\share\charsets\ |
            +--------------------------+-------------------------------------------+
            8 rows in set (0.00 sec)

相關文章
相關標籤/搜索