(推薦教程:mysql視頻教程)
在實(shí)際開(kāi)發(fā)中,一些低版本數(shù)據(jù)庫(kù),不支持一些特殊的sql語(yǔ)句,因此高版本數(shù)據(jù)庫(kù)數(shù)據(jù)導(dǎo)入低版本的時(shí)候就會(huì)出問(wèn)題,因此,在一些特殊情況下,低版本數(shù)據(jù)庫(kù)不能動(dòng),高版本mysql數(shù)據(jù)又無(wú)法導(dǎo)入低版本mysql,我們不得不在同一臺(tái)機(jī)器上安裝兩個(gè)版本mysql.
低版本mysql不支持的sql語(yǔ)句舉例,比如下面的這個(gè):
CREATE?TABLE?`storage`?( ??`storageid`?INT(11)?NOT?NULL?AUTO_INCREMENT, ?? ??`createTime`?TIMESTAMP?NULL?DEFAULT?CURRENT_TIMESTAMP, ?? ??`updateTime`?TIMESTAMP?NULL?DEFAULT?NULL?ON?UPDATE?CURRENT_TIMESTAMP, ?? ??PRIMARY?KEY?(`storageid`) )?ENGINE=INNODB?AUTO_INCREMENT=292?DEFAULT?CHARSET=utf8?COMMENT='倉(cāng)庫(kù)'
在5.1版本的mysql上執(zhí)行上面語(yǔ)句會(huì)報(bào)錯(cuò)
而在5.7版本的mysql就支持雙時(shí)間戳timestamp.可以正常執(zhí)行上述sql語(yǔ)句
正文正式開(kāi)始:
一 先停止之前安裝的低版本mysql服務(wù):
二 將我其他電腦上安裝好的mysql5.7拷貝過(guò)來(lái)(我在其他電腦上安裝過(guò)mysql-5.7.22-winx64.zip版本)
三 拷貝過(guò)來(lái)之后,進(jìn)入該文件夾,刪除掉data目錄,然后打開(kāi)my.ini,進(jìn)行修改端口號(hào),端口號(hào)改為3307,basedir和datadir也要重新配一下
修改內(nèi)容如圖:
配置文件內(nèi)容想要的可以拿去:——>
[mysqld] port?=?3307 basedir=C:mysql-5.7.22-winx64 datadir=C:mysql-5.7.22-winx64data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysql] default-character-set=utf8
四 開(kāi)始執(zhí)行安裝和添加服務(wù)的步驟:
4.1?以管理員身份去運(yùn)行命令行窗口
4.2 進(jìn)入mysql5.7的bin目錄下
4.3 安裝mysql服務(wù),指定該mysql服務(wù)名為mysql2,并根據(jù)my.ini文件進(jìn)行安裝,命令如下:
C:mysql-5.7.22-winx64bin>mysqld?install?mysql2?--default-file="C:mysql-5.7.22-winx64my.ini" 成功安裝后會(huì)提示: Service?successfully?installed.
去服務(wù)里面,可查看到此時(shí)多了一個(gè)mysql2服務(wù)
五 初始化數(shù)據(jù)庫(kù)
mysql服務(wù)安裝成功后,就需要初始化數(shù)據(jù)庫(kù)了,否則是無(wú)法啟動(dòng)服務(wù)的。
在bin目錄下執(zhí)行如下命令
C:mysql-5.7.22-winx64bin>mysqld?--initialize
初始化成功后,命令行沒(méi)有任何提示。但在mysql5.7文件夾中已自動(dòng)生成了data目錄
六?打開(kāi)注冊(cè)表,找到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesmysql2,修改ImagePath參數(shù),更正mysql2服務(wù)相關(guān)路徑。
修改ImagePath參數(shù):
七 啟動(dòng)數(shù)據(jù)庫(kù),修改密碼
使用net start mysql2 命令啟動(dòng)mysql2服務(wù)
C:mysql-5.7.22-winx64bin>net?start?mysql2 mysql2?服務(wù)正在啟動(dòng)?. mysql2?服務(wù)已經(jīng)啟動(dòng)成功。
(若mysql2 啟動(dòng)失敗,請(qǐng)檢查自己是否已經(jīng)停止了之前的mysql服務(wù),見(jiàn)第一步)
mysql2服務(wù)啟動(dòng)后,去data/xxx.err文件中找到臨時(shí)密碼,進(jìn)行登錄
使用臨時(shí)密碼進(jìn)行登錄(注意:P 端口,p 密碼)
C:mysql-5.7.22-winx64bin>mysql -P3307 -uroot -p Enter password: ************? ? (此處輸入的是臨時(shí)密碼) Welcome to the MySQL monitor. ?Commands end with ; or g. Your MySQL connection id is 2 Server version: 5.7.22Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the current input statement.mysql>
修改密碼
mysql>?set?password?for?root@localhost=password('001nX123456'); Query?OK,?0?rows?affected,?1?warning?(0.00?sec)
使用 quit 退出,使用新密碼登錄。
mysql>?quit Bye C:mysql-5.7.22-winx64bin>mysql?-P3307?-uroot?-p Enter?password:?************* Welcome?to?the?MySQL?monitor.??Commands?end?with?;?or?g. Your?MySQL?connection?id?is?3 Server?version:?5.7.22?MySQL?Community?Server?(GPL)
結(jié)束。