在保持舊版本情況下安裝5 7版MYSQL

2021-10-24 00:18:32 字數 3002 閱讀 5836

在實際開發中,一些低版本資料庫,不支援一些特殊的sql語句,因此高版本資料庫資料匯入低版本的時候就會出問題,因此,在一些特殊情況下,低版本資料庫不能動,高版本mysql資料又無法匯入低版本mysql,我們不得不在同一臺機器上安裝兩個版本mysql.

低版本mysql不支援的sql語句舉例,比如下面的這個:

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='倉庫'

在5.1版本的mysql上執行上面語句會報錯

而在5.7版本的mysql就支援雙時間戳timestamp.可以正常執行上述sql語句

先停止之前安裝的低版本mysql服務

#埠號改為3307,basedir和datadir也要重新配一下:

[mysqld]

port = 3307

basedir=c:\mysql-5.7.22-winx64

datadir=c:\mysql-5.7.22-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

管理員身份去執行命令列視窗

進入mysql5.7的bin目錄下

安裝mysql服務,指定該mysql服務名為mysql2,並根據my.ini檔案進行安裝,命令如下:

c:\mysql-5.7.22-winx64\bin>mysqld install mysql2 --default-file="c:\mysql-5.7.22-winx64\my.ini"

service successfully installed.

去服務裡面,可檢視到此時多了乙個mysql2服務

如果中途安裝異常,可以用mysqld remove mysql2 或 sc delete mysql2命令解除安裝,再重新安裝

【注意:】如果更高版本(比如8版本)出現下圖狀態,將mysqld 改為 .\mysqld即可mysql服務安裝成功後,就需要初始化資料庫了,否則是無法啟動服務的。

在bin目錄下執行如下命令

c:\mysql-5.7.22-winx64\bin>mysqld --initialize

初始化成功後,命令列沒有任何提示。但在mysql5.7資料夾中已自動生成了data目錄

使用net start mysql2 命令啟動mysql2服務

c:\mysql-5.7.22-winx64\bin>net start mysql2

mysql2 服務正在啟動 .

mysql2 服務已經啟動成功。

(若mysql2 啟動失敗,請檢查自己是否已經停止了之前的mysql服務,見第一步)

mysql2服務啟動後,去data/***.err檔案中找到臨時密碼,進行登入

使用臨時密碼進行登入(注意:p(大寫) 埠,p(小寫) 密碼)

c:\mysql-5.7.22-winx64\bin>mysql -p3307 -uroot -p

enter password: ************    (此處輸入的是臨時密碼)

welcome to the mysql monitor.  commands end with ; or \g.

your mysql connection id is 2

server version: 5.7.22

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-winx64\bin>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)

結束。

【注意:】如果是高版本,命令改為:.\mysql -p3307 -uroot -p

在已有MySQL情況下安裝sphinxSE

1 mysql原始碼包 2 sphinx 0.9.9.tar.gz 具體步驟略 wget 1 cd opt 2 tar zxvf mysql 5.1.66.tar.gz 3 tar zxvf sphinx 0.9.9.tar.gz 4 mysqladmin uroot ppwd version 5 ...

Mysql5 7在忘記密碼的情況下如何修改密碼?

1.停止服務 2.mysqld skip grant tables 3.回車之後就不要動了,再新開啟乙個命令提示符視窗,同樣進入mysql的安裝目錄下,輸入 mysql u root p 密碼為空,直接回車 接著輸入以下命令 use mysql update user set authenticat...

linux 下安裝 Mysql5 7版本

使用者 mysql 使用者組 mysql su root mkdir mysql chown r mysql mysql mysql cp mysql 5.7.tar.gz mysql cd mysql tar xvf mysql 5.7.tar.gz cd mysql 5.7 進入解壓資料夾內 新...