環境
在安裝MySQL5.7前需要保證機器上已安裝如下組件:
DirectX
Visual C++ Redistributable Packages for Visual Studio 2013
若沒有則需要安裝,下面是下載鏈接
Visual C++ Redistributable Packages for Visual Studio 2013
1.安裝
把下載好的mysql壓縮包解壓,並放到C:\Program Files (x86)\目錄下(不一定非要放在該目錄下,也可以在其他目錄下)
2.配置
在C:\Program Files (x86)\mysql-5.7.27-winx64\目錄下創建my.ini配置文件,內容如下:
[mysqld]
#端口號
port=3306
#安裝目錄
basedir = C:\Program Files (x86)\mysql-5.7.27-winx64
#數據庫存放目錄
datadir = C:\Program Files (x86)\mysql-5.7.27-winx64\data
# 提示 正反斜槓都可以( 在windows下 / 和 \ 沒有區別)
# 注意,basedir和datadir是必須要配置的
3.配置環境變量
新添加一個環境變量MYSQL_HOME ,值爲 C:\Program Files (x86)\mysql-5.7.27-winx64
修改path變量,在末尾添加%MYSQL_HOME%\bin;
4.安裝mysql服務
以管理員身份運行cmd,進入到mysql的bin目錄下。
初始化數據文件
mysqld --initialize
當mysql初始化成功後,會在mysql的data目錄下生成一個xxx.err文件,這個文件中記錄了root用戶的臨時密碼。
那一行大概如下:
2019-08-26T07:52:24.151722Z 1 [Note] A temporary password is generated for root@localhost: _.JoliF9QjGH
所以我的初始密碼爲:_.JoliF9QjGH
5.註冊mysql服務
在mysql的bin目錄下打開命令行,執行如下命令:
mysqld install
它就會在服務中生成一個mysql的服務,我們在服務中把它設置成開機自動啓動。
6.啓動mysql服務
net start mysql
7.修改root密碼
打開命令行,執行以下命令,回車,再輸入上面的初始密碼:
mysql -u root -p
進入MySQL命令行模式後,輸入如下命令,命令中的 new_password 爲root賬號的新密碼,請修改它。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
8.允許遠程連接
以命令行的形式登錄到mysql執行如下命令即可
use mysql;
update user set host = '%' where user = 'root';
select host, user from user;
9.刷新權限
FLUSH PRIVILEGES;
10.測試
測試是否可以連接上數據庫
再把一些高級的配置也放到my.ini配置文件中
[client]
#客戶端設置
port = 3306
#socket = /data/mysql/data/mysql.sock
default-character-set = utf8mb4
[mysqld]
#user = mysql
port = 3306
#socket = /data/mysql/data/mysql.sock
bind-address = 0.0.0.0
server-id = 1
pid-file = C:\Program Files (x86)\mysql-5.7.27-winx64\data\mysql.pid
#安裝目錄
basedir = C:\Program Files (x86)\mysql-5.7.27-winx64
#數據庫存放目錄
datadir = C:\Program Files (x86)\mysql-5.7.27-winx64\data
#系統數據庫編碼設置,排序規則
character_set_server = utf8mb4
collation_server = utf8mb4_bin
back_log = 1024
explicit_defaults_for_timestamp = ON
lower_case_table_names = 0
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_connections = 512
max_connect_errors = 1000000
table_open_cache = 1024
max_allowed_packet = 8M
thread_stack = 256K
thread_cache_size = 384
skip-external-locking
interactive_timeout = 600
wait_timeout = 3600
log_timestamps = SYSTEM
log-error = C:\Program Files (x86)\mysql-5.7.27-winx64/logs/error.log
#默認使用InnoDB存儲引擎
default_storage_engine = InnoDB
innodb_buffer_pool_size = 64M
innodb_purge_threads = 1
innodb_log_buffer_size = 2M
innodb_log_file_size = 128M
innodb_lock_wait_timeout = 120
bulk_insert_buffer_size = 32M
myisam_sort_buffer_size = 8M
# MySQL重建索引時所允許的最大臨時文件的大小
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1
lower_case_table_names=1
[mysqldump]
quick
max_allowed_packet = 16M
[myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M
參考:
無法啓動此程序,因爲計算機丟失MSVCP120.dll,MSVCR120.dll