1、下載免安裝版壓縮包
下載地址:http://dev.mysql.com/downloads/mysql/
- 選擇符合你的操作系統的版本,點擊download進入下載頁面
- 不用注冊也可以點擊下載連接進行下載
2、安裝
-
解壓下載的壓縮文件到你的mysql安裝目錄(目錄能不能有中文沒測試過,你可以試一下),以下是我的解壓目錄
- 復制解壓目錄D:\javaEnvironment\mysql-5.7.12-winx64下的my-default.ini命名為my.ini,打開my.ini添加如下配置、保存:
# For advice on how to change settings please see # http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the # *** default location during install, and will be replaced if you # *** upgrade to a newer version of MySQL. [client] default-character-set=utf8 [mysqld] # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. # innodb_buffer_pool_size = 128M # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # These are commonly set, remove the # and set as required. #skip-grant-tables basedir = "D:\javaEnvironment\mysql-5.7.12-winx64" datadir = "D:\javaEnvironment\mysql-5.7.12-winx64\data" tmpdir = "D:\javaEnvironment\mysql-5.7.12-winx64\data" socket = "D:\javaEnvironment\mysql-5.7.12-winx64\data\mysql.sock" port = 3306 log-error = "D:\javaEnvironment\mysql-5.7.12-winx64\data\mysql_error.log" # server_id = ..... max_connections = 100 table_open_cache = 256 query_cache_size = 1M tmp_table_size = 32M thread_cache_size = 8 innodb_data_home_dir = "D:\javaEnvironment\mysql-5.7.12-winx64\data\" innodb_flush_log_at_trx_commit = 1 innodb_log_buffer_size = 128M innodb_buffer_pool_size = 128M innodb_log_file_size = 10M innodb_thread_concurrency = 16 innodb-autoextend-increment = 1000 # Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. join_buffer_size = 128M sort_buffer_size = 32M read_rnd_buffer_size = 32M max_allowed_packet = 32M explicit_defaults_for_timestamp = true sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
- 設置環境變量,在環境變量path變量中后面添加上上面的mysql解壓目錄的bin路勁D:\javaEnvironment\mysql-5.7.12-winx64\bin,注意添加前加上‘;’號
- win+r,輸入cmd進入windows Dos界面
- 進入解壓的/bin目錄下,(重要)執行命令mysqld --initialize,5.7之后需要初始化生成數據庫文件(根目錄下的data文件),否則后續無法啟動服務
- 執行命令mysqld -install,安裝mysql服務
- 執行命令net start mysql,啟動服務
- 執行命令mysql -uroot -p,會報錯ERROR 1045(28000),需要設置登錄密碼
- 打開配置文件my.ini,將skip-grant-tables前面的#去掉,然后重啟服務,再次登錄就可略過密碼
-
進入mysql數據庫,依次執行以下命令:
use mysql;
update user set authentication_string=password("root") where user="root"; //注意:這里"root"修改為你的密碼,如:"123456"
flush privileges;
quit;
- 打開配置文件my.ini,在skip-grant-tables前面加上#注釋掉,然后重啟服務,使用設置的密碼再次登錄
- mysql登陸后執行:SET PASSWORD = PASSWORD('123456'); 原因參考官網說明:http://dev.mysql.com/doc/refman/5.6/en/alter-user.html。(ps:英文不好,沒看懂,看懂的可以給我指點一下)
- 然后就可以在版本的mysql客戶端SQLyog中連接mysql server了,但是這時候別的機器還不能訪問本機的mysql server,如下三步操作解決問題:
- use mysql; //進入mysql數據庫
- update user set host = '%' where user = 'root'; //可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql后,更改 "mysql" 數據庫里的 "user" 表里的 "host" 項,從"localhost"改稱"%"
- GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; //賦予任何主機訪問數據的權限
- FLUSH PRIVILEGES //修改生效