MySQL 8 在 Windows 下安裝及使用

MySQL 8 在 Windows 下安裝及使用

來自專欄猿論20 人贊了文章

MySQL 8 帶來了全新的體驗,比如支持 NoSQL、JSON 等,擁有比 MySQL 5.7 兩倍以上的性能提升。本文講解如何在 Windows 下安裝 MySQL 8,以及基本的 MySQL 用法。

下載

下載地址 dev.mysql.com/downloads

本例為:MySQL Community Server 8.0.12。

解壓

解壓至安裝目錄,比如 D 盤根目錄下。

本例為:D:mysql-8.0.12-winx64

創建 my.ini

my.ini 是 MySQL 安裝的配置文件:

[mysqld]# 安裝目錄basedir=D:\mysql-8.0.12-winx64# 數據存放目錄datadir=D:\mysqlData\data

my.ini放置在 MySQL 安裝目錄的根目錄下。需要注意的是,要先創建D:mysqlData目錄。data目錄是由 MySQL 來創建。

初始化安裝

執行:

mysqld --defaults-file=D:mysql-8.0.12-winx64my.ini --initialize --console

控制台輸出如下,說明安裝成功:

>mysqld --defaults-file=D:mysql-8.0.12-winx64my.ini --initialize --console2018-08-20T16:14:45.287448Z 0 [System] [MY-013169] [Server] D:mysql-8.0.12-winx64inmysqld.exe (mysqld 8.0.12) initializing of server in progress as process 50122018-08-20T16:14:45.289628Z 0 [ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.2018-08-20T16:14:45.299329Z 0 [ERROR] [MY-010119] [Server] Aborting2018-08-20T16:14:45.301316Z 0 [System] [MY-010910] [Server] D:mysql-8.0.12-winx64inmysqld.exe: Shutdown complete (mysqld 8.0.12) MySQL Community Server - GPL.D:mysql-8.0.12-winx64in>mysqld --defaults-file=D:mysql-8.0.12-winx64my.ini --initialize --console2018-08-20T16:15:25.729771Z 0 [System] [MY-013169] [Server] D:mysql-8.0.12-winx64inmysqld.exe (mysqld 8.0.12) initializing of server in progress as process 181482018-08-20T16:15:43.569562Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: L-hk!rBuk9-.2018-08-20T16:15:55.811470Z 0 [System] [MY-013170] [Server] D:mysql-8.0.12-winx64inmysqld.exe (mysqld 8.0.12) initializing of server has completed

其中,「L-hk!rBuk9-.」就是 root 用戶的初始化密碼。稍後可以做更改。

啟動、關閉 MySQL server

執行mysqld就能啟動 MySQL server,或者執行 mysqld --console可以看到完整的啟動信息:

>mysqld --console2018-08-20T16:18:23.698153Z 0 [Warning] [MY-010915] [Server] NO_ZERO_DATE, NO_ZERO_IN_DATE and ERROR_FOR_DIVISION_BY_ZERO sql modes should be used with strict mode. They will be merged with strict mode in a future release.2018-08-20T16:18:23.698248Z 0 [System] [MY-010116] [Server] D:mysql-8.0.12-winx64inmysqld.exe (mysqld 8.0.12) starting as process 163042018-08-20T16:18:27.624422Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.2018-08-20T16:18:27.793310Z 0 [System] [MY-010931] [Server] D:mysql-8.0.12-winx64inmysqld.exe: ready for connections. Version: 8.0.12 socket: port: 3306 MySQL Community Server - GPL.

關閉,可以執行 mysqladmin -u root shutdown

使用 MySQL 客戶端

使用 mysql 來登錄,賬號為 root,密碼為「L-hk!rBuk9-.」:

>mysql -u root -pEnter password: ************Welcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is 11Server version: 8.0.12Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type help; or h for help. Type c to clear the current input statement.

執行下面的語句來改密碼。其中「123456」即為新密碼。

mysql> ALTER USER root@localhost IDENTIFIED BY 123456;Query OK, 0 rows affected (0.13 sec)

MySQL 常用指令

顯示已有的資料庫:

mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || sys |+--------------------+4 rows in set (0.08 sec)

創建新的資料庫:

mysql> CREATE DATABASE lite;Query OK, 1 row affected (0.19 sec)

使用資料庫:

mysql> USE lite;Database changed

建表:

建表執行:

mysql> CREATE TABLE t_user (user_id BIGINT NOT NULL, username VARCHAR(20));Query OK, 0 rows affected (0.82 sec)

查看錶:

查看資料庫中的所有表:

mysql> SHOW TABLES;+----------------+| Tables_in_lite |+----------------+| t_user |+----------------+1 row in set (0.00 sec)

查看錶的詳情:

mysql> DESCRIBE t_user;+----------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+----------+-------------+------+-----+---------+-------+| user_id | bigint(20) | NO | | NULL | || username | varchar(20) | YES | | NULL | |+----------+-------------+------+-----+---------+-------+2 rows in set (0.00 sec)

插入數據:

mysql> INSERT INTO t_user(user_id, username) VALUES(1, 老衛);Query OK, 1 row affected (0.08 sec)

歡迎關注《從天氣項目看 Spring Cloud 微服務治理》

《基於Spring Boot技術棧博客系統企業級前後端實戰 》

參考引用

  • 原文同步至waylau.com/installing-m

作者:老衛

鏈接:imooc.com/article/70056

來源:慕課網


推薦閱讀:

如何確定自己是否適合做程序員?

半路學編程,可以成為大牛嗎?

如何使用 GitHub?

在做程序員的道路上,你掌握了什麼概念或技術使你感覺自我提升突飛猛進?

你看過/寫過哪些有意思的代碼?

如何在程序里留下彩蛋?

為什麼部分程序員下班後只關顯示器不關電腦?

有哪些好笑的關於程序員的笑話?

如何防止自己被人肉搜索到?

面試必備之樂觀鎖與悲觀鎖

搞定計算機網路面試,看這篇就夠了(補充版)

哪些 Python 庫讓你相見恨晚?

推薦閱讀:

經前綜合征出沒,請小心 ————| 健康朝九晚五主題站 | 果殼網 科技有意思
代理IP-2808proxy-解決反爬蟲最直接的方法
牽引力教育Python課程,致力打造優質互聯網技術人才
微軟股價創下歷史新高 市值首次突破8000億美元
中國橋樑科技與橋樑建設躋身世界領先行列

TAG:科技 | 計算機科學 | MySQL |