1, 下載綠色版Mysql5.6.24
http://dlsw.baidu.com/sw-search-sp/soft/ea/12585/mysql-5.6.24-win32.1432006610.zip
官網下載自己想要的版本: https://dev.mysql.com/downloads/mysql/
2,將bin目錄設置到環境變量中
比如 :path = %Path%;D:\Program Files\mysql-5.6.24-win32-noinstall\bin;
3,修改my.ini文件
1) 解壓后可以看到my-default.ini,復制它並命名為my.ini
2) 編輯my.ini里面的屬性
#mysql的目錄
basedir = D:\Program Files\mysql-5.6.24-win32-noinstall
#mysql存放數據的目錄
datadir = D:\Program Files\mysql-5.6.24-win32-noinstall\data
port=3306
character_set_server=utf8
[client]
port=3306
default-character-set=utf8
http://files.cnblogs.com/files/yangw/my.ini.rar
4,通過命令提示符安裝mysql
打開cmd,進入到mysql的bin目錄下,使用 mysqld install命令安裝
此時在windows的服務中,就可以看到Mysql的服務
mysqld remove 命令卸載Mysql
5,通過命令啟動mysql服務
net start mysql
6,進入mysql
使用 mysql -u root -p回車之后輸入密碼進入(注意,第一次使用root登錄時是沒有密碼的,直接回車)
7, 查詢mysql中所有的數據庫 show databases
原始數據庫中,我們一般不作修改.
8, 退出與停止mysql服務
退出mysql命令提示符,使用 quit
停止mysql服務, 使用命令 net stop mysql
9, 顯示一下安裝的mysql編碼方式
show variables like 'char%';
---------------------------------------------------------------------------------------------------------
1, 創建數據庫
create database xxx;
2,使用數據庫
use xxx;
3, 查詢所有數據庫的表
show tables;
4, 查看數據庫中的某張表的結構
desc t_xxx;
5, 刪除數據庫
drop database xxx;
---------------------------------------------------------------------------------------------------------
1, mysql常用的數據類型
int 表示整型
float 表示浮點型
varchar 表示可變長度的字符串(最大256)
char 表示固定長度的字符串(最大256)
text 表示文本類型, 比如說存一個網頁的內容
binary 表示二進制類型,比如說存圖片,存文件時使用 類似於 blob
date 表示日期類型
time 表示時間類型
datetime 表示日期和時間 類似於 timestamp
其它還有很多類型,參考文檔說明...
2, 數據表的命名規則 :
建議段字使用下划線,比如 user_id
建議普通表使用t_xxx命名,比如 t_user,臨時表使用temp_xxx
3, 創建t_user表
-- 創建表 create table if not exists t_user( id int(10) auto_increment primary key, username varchar(20) not null unique, password varchar(20), sex char(1) default 'm', birday date comment '這是生日哦' ) comment '用戶表'; -- 表結構修改 ALTER TABLE t_user RENAME TO t_user1 ; -- 修改表名 ALTER TABLE t_user change COLUMN gender sex char(1) COMMENT '類型:w-女;m-男 ' ; -- 修改表列名 ALTER TABLE t_user MODIFY id int(20); -- 修改字段類型 ALTER TABLE t_user ADD address VARCHAR(40); -- 添加表列 ALTER TABLE t_user DROP column address ; --刪除表列 -- 表備注添加 ALTER TABLE t_user COMMENT='這是表的注釋'; -- mysql 修改列的注釋是比較麻煩的,它會重新建表列,浪費時間的
4, 導入一個sql腳本文件
source 路徑 ,注意路徑只能使用 這種斜杠 /
5, 創建外鍵關聯表 學生和班級是一對多的關系
create table if not exists t_classroom( id int(10) auto_increment primary key, classname varchar(50), grade int(10) ) comment '班級表'; create table if not exists t_student( id int(10) auto_increment primary key, username varchar(20), password varchar(20), birday date , cls_id int(10), -- 外鍵的使用方式 constraint foreign key (cls_id) references t_classroom(id) ) comment '學生表';
6, 為用戶授權 grant ,可以實現修改用戶密碼
-- 創建用戶yangw並設置密碼為123456,它可以對cms數據庫中所有對象進行所有的操作 (下面這個是只能通過localhost訪問到) GRANT All ON cms.* TO 'yangw'@'localhost' IDENTIFIED BY '123456'; -- 修改root用戶的密碼,root是可以訪問所有的數據庫對象的 GRANT All ON *.* TO 'root'@'localhost' IDENTIFIED BY '123456'; -- 用戶在任何ip地址中都能訪問數據庫,用戶可以設置為無密碼 GRANT All ON cms.* TO 'root'@'%' ; GRANT All ON cms.* TO 'root'@'%' IDENTIFIED BY '';
7, insert語句, truncate清空表(同時也會將自動遞增標識清空)
-- insert語句,為指定字段賦值 insert into t_user (username,password) values ('張三','123456'); --insert語句, 不指定字段,此時需要為每一個字段賦值, 主鍵是自動生成的,這里設置為null即可 insert into t_user values (null,'李四','123456','y','2015-06-10'); -- insert .... select insert into t_student (username,password) select username,password from t_user ; --干掉整個表的數據,也就是清空表 truncate table t_user;
8, id in(a,b,c) 的效率 比 id=a or id=b or id=c 的效率高.
9, now() 獲取當前時間 ,mysql中有很多有用的時間函數,比如 獲取年份YEAR()
-- 查詢當前時間 select now(); 2015-11-27 18:04:55 -- 查詢當前的年份 select YEAR(now()); 2015
10,group by
-- 查詢出每個年齡段的學生數量. select YEAR(birday) as 'y' ,count(id) from t_student group by y;
navicat連接mysql數據庫時,使用root用戶,需輸入密碼(本文設置的是123456)
但當使用授權的用戶xt_oms時,輸入密碼則無法連接報1045, 不輸入密碼則可以連接,但只能看到兩個數據庫
=====================================================Linux版本的Mysql========================
https://dev.mysql.com/downloads/mysql/
###===========================================================================================================
###
### 安裝mysql(下載好的包,離線安裝) https://blog.csdn.net/kokjuis/article/details/78215020
### 在CentOS7 安裝
###===========================================================================================================
#列出安裝的mysql。
rpm -qa | grep mariadb ###顯示mariadb-libs-5.5.56-2.el7.x86_64
#強制卸載
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
rpm -e --nodeps mariadb-5.5.60-1.el7_5.x86_64
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
rpm -e --nodeps mariadb-devel-5.5.60-1.el7_5.x86_64
rpm -e --nodeps mariadb-server-5.5.60-1.el7_5.x86_64
#檢查是否有遺留文件。如果有刪除即可。
ls /etc/my.cnf
ll /var/lib/mysql/ ll /var/lib64/mysql(64位)
groupadd mysql
useradd -g mysql mysql
官網下載mysql包
https://dev.mysql.com/downloads/mysql/5.7.html#downloads
Version:5.7.24 , Operating System:Linux-Generic, OS Version:64位
mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 下載它
后面的安裝步驟可完全按照上面鏈接進行
拷貝tar.gz包到 /usr/local/ 目錄下:
cp mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz /usr/local/
cd /usr/local/
解壓
tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
重命名目錄為 mysql
mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql
編輯my.cnf(新建的)
vim /etc/my.cnf
內容如下:
[mysql]
# 設置mysql客戶端默認字符集
default-character-set=utf8
socket=/usr/local/mysql/mysql.sock
[client]
default-character-set=utf8
socket=/usr/local/mysql/mysql.sock
[mysqldump]
socket=/usr/local/mysql/mysql.sock
[mysqladmin]
socket=/usr/local/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/usr/local/mysql
[mysqld]
#skip-name-resolve
#設置3306端口
port = 3306
socket=/usr/local/mysql/mysql.sock
# 設置mysql的安裝目錄
basedir=/usr/local/mysql
# 設置mysql數據庫的數據的存放目錄
datadir=/usr/local/mysql/data
# 允許最大連接數
max_connections=1000
# 服務端使用的字符集默認為8比特編碼的latin1字符集
character-set-server=utf8
# 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB
#lower_case_table_name=1
max_allowed_packet=64M
進入mysql安裝目錄
cd /usr/local/mysql
chown -R mysql:mysql ./ 修改當前目錄擁有着為mysql用戶
安裝數據庫
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
注意這個臨時密碼后面會用到一次 [Note] A temporary password is generated for root@localhost: wrKQhKz&n1OJ
chown 777 /etc/my.cnf
賦值啟動腳本到開機目錄
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
將mysqld服務加入到系統服務
chkconfig --add mysqld
檢查mysqld服務是否已經生效
chkconfig --list mysqld
結果
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
表明mysqld服務已經生效,在2、3、4、5運行級別隨系統啟動而自動啟動,以后可以使用service命令控制mysql的啟動和停止
此時可以啟動mysql
啟動與停止mysql的命令:
service mysqld start和service mysqld stop
將export PATH=$PATH:/usr/local/mysql/bin 加入到 /etc/profile 文件的最后
使文件生效
source /etc/profile
以root身份登錄mysql
mysql -uroot -p
注意輸入剛才的臨時密碼
更改root的密碼以及權限
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
創建數據庫
create database mantis;
2,使用數據庫
use mantis;
//創建mantis用戶並設置密碼123456
GRANT All ON mantis.* TO 'mantis'@'%' IDENTIFIED BY '123456';
quit;
防火牆開放3306端口
firewall-cmd --add-port=3306/tcp
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload
firewall-cmd --query-port=3306/tcp
============================Windows版 Mysql 5.7.28=====================
++ 參考了 https://www.cnblogs.com/liuxiaoji/p/9778212.html
++ https://blog.csdn.net/codingforhaifeng/article/details/80675498
++ 若是圖形化的安裝方式,可參考: https://blog.csdn.net/qq_36819281/article/details/84037944
=============
1. 解壓縮ZIP包且配置環境變量 PATH=%PATH%;D:\Program Files\mysql-5.7.28-winx64\bin
2. 此時解壓后的文件中沒有data目錄和ini文件,創建my.ini文件
[mysqld]
port = 3306
basedir=D:\Program Files\mysql-5.7.28-winx64
datadir=D:\Program Files\mysql-5.7.28-winx64\data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql]
default-character-set=utf8
3.以管理員身份運行CMD,cd D:\Program Files\mysql-5.7.28-winx64\bin 下,執行命令 mysqld -install
繼續執行命令: mysqld --initialize-insecure --user=mysql , 該命令會創建data目錄及其root用戶
.啟動mysql命令:net start mysql
登錄MySQL命令:mysql -u root -p 密碼為空,直接按Enter鍵進入
若要改密碼,參考上面的5.6.24的說明。