mysql數據庫,安裝完整解決方案

現在項目需求,客戶要求mysql數據庫,我們公司只有oracle數據庫,沒辦法,客戶是上帝。

mysql版本:mysql-5.7.17-winx64.zip
安裝環境:window7

備註:mysql官網的話,現在貌似只能找到5.5版本的64位安裝版。
mysql5.7版本和5.6版本在官網上並沒有安裝版,只有解壓版。

windows下MySQL 5.7+ 解壓縮版安裝配置方法
1.去官網下載.zip格式的MySQL Server的壓縮包,根據需要選擇x86或x64版。

//可以參考這個網址下載。其實非常簡單,如果這個網址失效,
//相信你也能正確下載,本文重點不是下載mysql。
http://jingyan.baidu.com/article/54b6b9c0eb55182d583b479c.html

2.解壓縮至你想要的位置。

3.複製解壓目錄下my-dafault.ini至bin目錄下,重命名爲my.ini。並添加以下內容(路徑要根據自己的情況修改呀)。沒有data目錄不要緊,下一步處理這個事情。

[mysql]
# 設置mysql客戶端默認字符集
default-character-set=utf8 
[mysqld]
#設置3306端口
port = 3306 
# 設置mysql的安裝目錄
basedir=C:\mysql-5.7.12-winx64
# 設置mysql數據庫的數據的存放目錄
datadir=C:\mysql-5.7.12-winx64\data
# 允許最大連接數
max_connections=200
# 服務端使用的字符集默認爲8比特編碼的latin1字符集
character-set-server=utf8
# 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB

4.沒有data文件夾使得網上很多配置方法無效,如果不進行初始化的話,mysql服務是無法啓動的。下面是初始化的方法:
(1)以管理員身份運行cmd,並cd到mysql中的bin目錄下,執行命令:mysqld –initialize –user=mysql –console
(2)該命令會創建data目錄與數據庫,生成root用戶和臨時密碼,如下圖,我們需要記住這個命令以便於登錄。

5.配置環境變量
否則你每次都要cd到bin目錄下才能使用mysql。右鍵此電腦(計算機)-屬性-高級系統設置-高級-環境變量,在系統變量中的PATH中加入你的bin目錄,如:C:\mysql-5.7.12-winx64\bin,點確定!

6.安裝MySQL服務
以管理員身份運行cmd,並輸入mysqld install MySQL –defaults-file=”C:\mysql-5.7.12-winx64\bin\my.ini”,其中的路徑爲你正式的ini文件。

7.修改密碼
運行cmd,輸入net start mysql啓動MySQL服務,再輸入mysql -u root -p,然後輸入臨時密碼。修改密碼:set password = password(‘新密碼’);,然後回車就可以了,注意分號不能省略。

安裝配置過程中出現的問題及解決方案:
1.問題:

C:\AppServ\MySQL> mysql -u root -p 
Enter password:  
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

解決方案:

編輯mysql配置文件my.ini(在mysql的安裝目錄下,我的在D:\Program Files\MySQL\MySQL Server 5.0\my.ini),在[mysqld]這個條目下加入 skip-grant-tables 保存退出後重啓mysql

1.點擊“開始”->“運行”(快捷鍵Win+R)。
2.停止:輸入 net stop mysql
3.啓動:輸入 net start mysql  

這時候在cmd裏面輸入mysql -u root -p就可以不用密碼登錄了,出現 password:的時候直接回車可以進入,不會出現ERROR 1045 (28000),但很多操作都會受限制,因爲我們不能grant(沒有權限)。

繼續按下面的流程走:

1.進入mysql數據庫:
mysql> use mysql; 
Database changed

2.給root用戶設置新密碼:  
mysql> update user set password=password("新密碼") where user="root"; 
Query OK, 1 rows affected (0.01 sec) 
Rows matched: 1 Changed: 1 Warnings: 0

3.刷新數據庫
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)  

4.退出mysql:
mysql> quit; 
Bye

改好之後,再修改一下my.ini這個文件,把我們剛纔加入的 "skip-grant-tables"這行刪除,保存退出再重啓mysql就可以了。

2.問題:

OperationalError: (1862, 'Your password has expired. To log in you must change it using a client that supports expired passwords.')
//由上面可知,mysql用戶的密碼過期了,但我記得在安裝完mysql後設置了root用戶的密碼爲123456, 
//且執行以下命令能正常進入mysql的shell:
mysql -u root -p 123456  
//既然能正常進入mysql的控制檯, 但不能正常連接mysql, 那麼我們再次設置密碼
//只有SET PASSWORD = PASSWORD('123456')能有效
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.  

mysql> user mysql;  
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'user mysql' at line 1  
mysql> use mysql;  
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement  
mysql> UPDATE user SET password=PASSWORD('123456') WHERE user='root';  
ERROR 1046 (3D000): No database selected  
mysql> use mysql;  
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement  
mysql> SET PASSWORD = PASSWORD('123456');  
Query OK, 0 rows affected (0.10 sec)  

mysql> use mysql;  
Reading table information for completion of table and column names  
You can turn off this feature to get a quicker startup with -A  

Database changed  
mysql>
//於是再次測試能否通過連接, 結果成功連上mysql數據庫  

3.問題:

MySQL5.7更改密碼時出現ERROR 1054 (42S22): Unknown column 'password' in 'field list'

解決方案:

新安裝的MySQL5.7,登錄時提示密碼錯誤,安裝的時候並沒有更改密碼,後來通過免密碼登錄的方式更改密碼,輸入update mysql.user  set password=password('root') where user='root'時提示ERROR 1054 (42S22): Unknown column 'password' in 'field list',原來是mysql數據庫下已經沒有password這個字段了,password字段改成了
authentication_string

所以更改語句替換爲update MySQL.user set authentication_string=password('root') where user='root' ;即可

4.問題
今天,突然就登錄不上去了。
這裏寫圖片描述
解決方案:

//使用 mysqld --console 啓動 可以顯示出啓動錯誤信息
//檢查data文件目錄中是否有 mysql目錄,其中是否有 user 表。如果有則檢查權限。
1.把原來data文件夾壓縮
2.mysqld  --initialize 先初始化data目錄
3.新生成的data文件夾重命名一個,解壓縮data壓縮包,把新生成的data裏面的mysql文件夾複製到原有data文件夾裏面。
4.重新給mysql賦予密碼(參考上面)
5.ok

5.在服務器windows xp上安裝了mysql5.5.54,然後本地鏈接。
錯誤描述:
這裏寫圖片描述
解決方案:
在服務器電腦上,進行以下操作:
這裏寫圖片描述

備註:下面是幾個解決問題可以參考的鏈接:

http://blog.csdn.net/Cryhelyxx/article/details/42426069
http://blog.csdn.net/u010603691/article/details/50379282
http://blog.csdn.net/u012730299/article/details/51840416
http://www.cnblogs.com/qiaoconglovelife/p/5477832.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章