MySQL安裝 sql語句

數據庫概念

一款軟件,安裝在計算機 | 服務器上,php

只要告訴它:建立一個文件 | 新增一個數據 | 刪除一個數據,它就能幫咱們操做java

對應名稱關係:文件夾(庫)| 文件(表)| 表頭(字段)| 數據/記錄(表數據)python

 

MySQL:用於管理數據的一個軟件(兩個程序)mysql

只要是基於網絡通訊,底層都是socket!!!

服務端軟件:c++

  socket服務端 web

  本地文件操做redis

  解析指令sql

客戶端軟件:mongodb

  socket客戶端數據庫

  發送指令

  解析指令

客戶端能夠有不少個,python,java,php,c++均可以編程一個客戶端,用代碼指定ip port連接上服務端便可操做

服務端 - 多個客戶端:共同的語言 >>> 解析指令(sql語句)

DBA:
sql語句優化
RDBMS:數據庫管理系統

其餘相似軟件

  關係型數據庫:sqlite,db2,oracle,access,sql server,MySQl    

    彼此之間有約束或者有聯繫

    一般以表格方式存儲,第一步須要建立表結構!

  非關係型數據庫:mongodb,redis

    存儲方式:k,v 鍵值對形式

    數據間沒有關係  

 

MySQL的安裝

終端最好以管理員身份運行

切換到mysql目錄下啓動mysqld服務端(阻塞,監聽地址,固定的ip和端口)
cd D:\mysql56 D:

 新開cmd窗口啓動mysql客戶端

 

1、啓動

  服務端

     mysqld

  客戶端

    mysql -h 127.0.0.1 -P 3306 -uroot -p
    (在本機登陸)也支持簡寫
    mysql -uroot -p
    讓你輸入密碼,不用管直接敲回車 
sql語句第一條命令:
show databases;  # 查看全部數據庫
注意:輸入sql語句的時候,必定要用英文分號結束
若是輸入的sql語句錯了不想執行的話能夠在後面跟上\c取消該命令的執行
退出客戶端:exit,quit

 

二、將mysql啓動文件路徑添加到環境變量
三、將mysqld製做成系統服務 
  1)必定要先將mysqld殺死
  2)mysqld --install 將mysqld服務端製做成系統服務(開機自啓動)
# 查看mysqld進程 tasklist |findstr mysqld # 殺死mysqld進程 taskkill /F /PID 'PID號' # 將mysqld這款軟件作成系統服務軟件 mysqld --install
 # 查看計算機當前運行程序數 運行:services.msc
三、設置密碼
mysqladmin -uroot -p password "123" # 第一次修改完密碼之後,以後還修改密碼須要 mysqladmin -uroot -p123 password "123456" # 爲了後續調試方便,這裏把密碼設爲空值 mysqladmin -uroot -p123 password "新密碼"

四、破解密碼

  1.先關閉服務端
  2.以跳過受權表的方式(用戶密碼認證模式)從新啓動服務端
mysqld --skip-grant-tables

3.以管理員登陸
4.修改mysql庫裏面的user表

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

5.先關閉跳過驗證的服務端,以正常模式啓動服務端
6.輸入用戶名密碼正常登錄

五、解決編碼問題

mysql命令:"\s" 查看編碼

mysql不輸用戶名和密碼,默認以遊客模式登陸

 1.在mysql根目錄下新建一個my.ini的配置文件,在裏面固定加上下面的配置便可設置編碼問題

[mysqld] character-set-server=utf8 collation-server=utf8_general_ci
[client] default-character-set=utf8
[mysql] default-character-set=utf8
2.從新啓動的你mysql服務端,配置纔會生效

六、基本sql語句操做

  對數據的增刪改查

  sql書寫錯誤,只要沒加分號,\c可以使前面的sql語句失效

  1)文件夾(庫)

# 增 create database db1 charset utf8; # 查 show databases; show create database db1;
# 改
alter database db1 charset gbk; # 刪
drop database db1;

  2)文件(表)

  文件首先須要在文件夾下面,因此在操做文件以前,應該先肯定操做的是哪一個文件夾下面的文件

# 切換到指定的庫 user db1; select database(); # 查看當前所在的庫 # 增 create table t1(id int,name char); # 建立出來的多是多個文件,解耦管理 # 查 show tables; show create table t1; # 查看錶的詳細信息 describe t1; == desc t1; # 查看錶結構 # 改 alter table t1 modify name char(16); # 刪 drop table t1;

  3)數據(表數據)

# 增 insert into db1.t1 values (1,'jon'),(2,'ken'),(3,'bob'); # into可加可不加,db1能夠不指定,默認就是在當前庫下 # 查 select id,name from db1.t1; # db1可不指定,默認當前庫下 select * from t1; # 改 update db1.t1 set name='DSB' where id > 1; update db1.t1 set name='DSB' where id = 2 or id = 3; # 刪 delete from db1.t1 where id >3; delete from db1.t1 where name='egon'  # 這裏注意若是少了一個引號,後面不管敲什麼都沒有用了須要將引號補全

存儲引擎

不一樣的應用軟件處理不一樣類型的數據 
mysql5.5版本及以上默認的存儲引擎是innodb
innodb:支持行鎖表鎖,外鍵,事物,安全性更高,較myisam數據更安全
myisam:僅僅支持表鎖不支持行鎖,查詢速度較innodb更快
memory:內存引擎,將全部的數據直接放在內存,一旦斷電數據所有消失
blackhole:一切存入其中的數據都會消失
create table t1(id int,name char(16))engine=innodb;
相關文章
相關標籤/搜索