明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

MySQL5.7.18在Windows下怎么安裝解壓版的圖文詳細(xì)教程

[摘要]這篇文章主要為大家詳細(xì)介紹了Windows安裝MySQL 5.7.18 解壓版的詳細(xì)教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下一、安裝過(guò)程MySQL 版本:5.7.181 、配置my.i...
這篇文章主要為大家詳細(xì)介紹了Windows安裝MySQL 5.7.18 解壓版的詳細(xì)教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

一、安裝過(guò)程

MySQL 版本:5.7.18

1 、配置my.ini文件(簡(jiǎn)單的配置),放到MySQL的根目錄下,此處的文件路徑配置需要為絕對(duì)路徑(使用反斜杠需要雙拼,斜杠一個(gè)就可以了)(data文件夾不用自己創(chuàng)建,后面生成)


[client]
default-character-set=utf8
[mysqld]
port=3306
character_set_server=utf8
basedir="D:\\mysql-5.7.18-winx64"
datadir="D:\\mysql-5.7.18-winx64\\data"
# 服務(wù)端使用的字符集默認(rèn)為8比特編碼的latin1字符集
character-set-server=utf8
# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎
default-storage-engine=INNODB
[WinMySQLAdmin]
D:\\mysql-5.7.18-winx64\\bin\\mysqld.exe


2 配置環(huán)境變量,在Path中配置bin目錄

3 初始化數(shù)據(jù)庫(kù),生成data文件夾以及其中的一些配置文件(初始化后會(huì)生成root賬戶的默認(rèn)密碼:在xx.err文件中)


mysqld -initialize
# err文件示例:
[Note] A temporary password is generated for root@localhost: w1BI/g/y.wfx

4 注冊(cè)服務(wù)


mysqld -install

5 啟動(dòng)MySQL


net start mysql

6 啟動(dòng)后登錄,填入生成的默認(rèn)密碼


mysql -uroot -p

7 修改賬戶的密碼


set password for root@localhost=password('root');

8 停止MySQL服務(wù)


net stop mysql

9 若想刪除MySQL服務(wù),可以是有下面命令刪除


mysqld -remove

二、安裝后問(wèn)題

ONLY_FULL_GROUP_BY 問(wèn)題

使用后有時(shí)會(huì)報(bào)錯(cuò):

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'col_user_6.a.START_TIME' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

原因:MySQL 默認(rèn)開(kāi)啟了only_full_group_by模式,這個(gè)只能獲取受到group by影響的字段信息,不能與其它沒(méi)有受到group by影響的字段共存,或者是只能將group by的字段放到select關(guān)鍵字的首位,這個(gè)是有局限的
解決方案:

1)直接sql解決:這個(gè)解決方案有點(diǎn)局限性,就是數(shù)據(jù)庫(kù)重啟的時(shí)候還是會(huì)默認(rèn)啟動(dòng)only_full_group_by模式

復(fù)制代碼 代碼如下:

SET @@global.sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_pISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

2)永久性解決:在my.ini文件[mysqld]下,添加以下條件,這樣在MySQL啟動(dòng)的時(shí)候?qū)nly_full_group_by模式過(guò)濾掉了

復(fù)制代碼 代碼如下:

sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_pISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

三 控制腳本

最后寫一個(gè)控制腳本,這樣就可以在自己使用MySQL的時(shí)候頻繁的使用命令操作了


cls 
@echo off
:設(shè)置窗口字體顏色
color 0a 
:設(shè)置窗口標(biāo)題
TITLE MySQL管理程序

call :checkAdmin

goto menu
:菜單
:menu
cls
echo. 
echo.=-=-=-=-請(qǐng)選擇您要對(duì)MySQL的操作-=-=-=-=-
echo.
echo.1: 啟動(dòng)MySQL
echo.
echo.2: 關(guān)閉MySQL
echo. 
echo.3: 重啟MySQL
echo. 
echo.4: 退 出
echo.
echo.=-=-=-=-請(qǐng)輸入您要選擇的項(xiàng)目序號(hào)↓-=-=-=-
set /p id=
if "%id%"=="1" goto startup
if "%id%"=="2" goto shutdown
if "%id%"=="3" goto reboot
if "%id%"=="4" exit
pause

:啟動(dòng)
:startup
echo.
call :checkMySQL 1
echo.啟動(dòng)MySQL......
net start "MySQL"
echo.啟動(dòng)MySQL成功!
pause 
goto menu 

:停止
:shutdown
echo.
call :checkMySQL 2
echo.關(guān)閉MySQL......
net stop "MySQL"
echo.關(guān)閉MySQL成功!
pause 
goto menu

:重啟
:reboot
echo.
call :checkMySQL 2
echo.關(guān)閉MySQL......
net stop "MySQL"
echo.關(guān)閉MySQL成功!
goto startup
goto menu

:退出
:goout
pause
goto menu

:檢查MySQL進(jìn)程是否存在
:checkMySQL
set /a count=0
for /f "tokens=1 delims= " %%i in ('tasklist /nh ^  find /i "MySQL"') do (set /a count+=1)
if %count% neq 0 if "%1" equ "1" (
 echo 警告:MySQL已啟動(dòng)
 goto goout
)
if %count% equ 0 if "%1" equ "2" (
 echo 警告:MySQL未啟動(dòng)
 goto goout
)

:檢查是否是以管理員身份運(yùn)行
:checkAdmin
echo test am i admin? > %SystemRoot%\System32\admin.hujunjie
if not exist %SystemRoot%\System32\admin.hujunjie (
 echo 警告:請(qǐng)以管理員身份運(yùn)行!
 pause
 exit
)
# 這里的xxxx可以自己設(shè)定
del %SystemRoot%\System32\admin.xxxx

以上就是MySQL5.7.18在Windows下如何安裝解壓版的教程的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。