前兩天搞mybatis和springmvc的結合,搞了半天項目就是跑不起來,由於都沒有接觸過,也不知道原因出在哪里。今天想徹底學習下mybatis,於是就想使用MySQL。從官網上下了,MySQL-5.7.10免安裝版,本來以為只奧簡單配置下就好的,硬是花了兩個小時,汗。。。。
1、下載MySQL解壓D:\mysql-5.7.10-winx64
2、在MySQL目錄下新建一個my.ini文件,將下列內容復制過去:
[mysql] # 設置mysql客戶端默認字符集 default-character-set=utf8 [mysqld] #skip_grant_tables 這個先不要,這是忽略權限。 #設置3306端口 port = 3306 # 設置mysql的安裝目錄 basedir=D:\mysql-5.7.10-winx64 # 設置mysql數據庫的數據的存放目錄 datadir=D:\mysql-5.7.10-winx64\data # 允許最大連接數 max_connections=200 # 服務端使用的字符集默認為8比特編碼的latin1字符集 character-set-server=utf8 # 創建新表時將使用的默認存儲引擎 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
3、以管理員身份打開cmd進入MySQL的bin目錄下,
第一種情況:輸入mysql -u root –p,空格回車,出現錯誤。所以不輸密碼也是進不去的。
第二種情況:輸入mysqladmin -u root password "newpass",空格或者輸密碼,出現錯誤。
錯誤:ERROR 1045 (28000): Access denied for user ''@'localhost' (using password: NO)
度娘可以告訴你幾種解決方案,但都無效。
4、在上面的my.ini中加入
skip_grant_tables
在使用mysql -u root –p登錄數據庫,不輸密碼直接回車,才可以進入數據庫。
5、使用網上說的update set均不能修改密碼成功,因為MySQL5.7版本user表中沒有password這個字段了,可以使用desc user查看具體的字段結構。百度后才知道密碼字段放在了autihentication_string中。所以update,set要:UPDATE user SET autihentication_string= PASSWORD('123456') WHERE user = 'root';
6、quit,net stop mysql,回到ini文件中將skip_grant_tables刪除。重新開啟MySQL。再以root登錄,數日剛才設置的密碼即可。
常用顯示命令:
顯示命令
1、顯示數據庫列表。
show databases;
剛開始時才兩個數據庫:mysql和test。mysql庫很重要它里面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫進行操作。
2、顯示庫中的數據表:
use mysql; //打開庫,學過FOXBASE的一定不會陌生吧
show tables;
3、顯示數據表的結構:
describe 表名;
4、建庫:
create database 庫名;
5、建表:
use 庫名;
create table 表名 (字段設定列表);
6、刪庫和刪表:
drop database 庫名;
drop table 表名;
7、將表中記錄清空:
delete from 表名;
8、顯示表中的記錄:
select * from 表名;
三、一個建庫和建表以及插入數據的實例
drop database if exists school; //如果存在SCHOOL則刪除
create database school; //建立庫SCHOOL
use school; //打開庫SCHOOL
create table teacher //建立表TEACHER
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default '深圳',
year date
); //建表結束
//以下為插入字段
insert into teacher values('','glchengang','深圳一中','1976-10-10');
insert into teacher values('','jack','深圳一中','1975-12-23');
注:在建表中
(1)將ID設為長度為3的數字字段:int(3)並讓它每個記錄自動加一:auto_increment並不能為空:not null而且讓他成為主字段primary key
(2)將NAME設為長度為10的字符字段
(3)將ADDRESS設為長度50的字符字段,而且缺省值為深圳。varchar和char有什么區別呢,只有等以后的文章再說了。
(4)將YEAR設為日期字段。