Mac OS X 下安裝MySQL 5.7


下載安裝包

官網下載安裝包 選擇相應的版本和格式,有 .dmg 和壓縮包兩種。

這里選擇簡單直接的 .dmg安裝包,下載的時候可以將下載地址直接貼到迅雷,速度比較快。

安裝

安裝很簡單,直接雙擊下好的.dmg文件,一路next就可以了。

啟動 MySQL

OK!安裝夠簡單,接下來就是啟動MySQL,以及具體使用了。

系統偏好設置->MySQL->Start MySQL Server

image

啟動 Mysql

image

然后在終端中進入MySQL控制台

1
2
3
jacob@promote:~$ mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

這是什么情況,root用戶的密碼是啥,安裝的時候也沒有提示要設置密碼。

Google之,說是初始安裝后密碼為空直接回車就可以了,試了下不行,提示如上。下面就來解決這個問題。

MySQL修改密碼

  • 關閉服務

系統偏好設置->MySQL->Stop MySQL Server

  • 安全模式進入MySQL
1
jacob@JacobdeMacBook-Pro:~$ sudo mysqld_safe --skip-grant-tables

重新打開一個終端 進入MySQL控制台

1
2
3
4
5
6
7
8
9
10
11
12
jacob@JacobdeMacBook-Pro:~$ mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.7-rc MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

提示已經成功進入控制台

修改密碼,sql語句

1
mysql> update mysql.user set password=password('123456') where user='root';

坑爹的地方來了,輸入后報如下錯誤

1
ERROR 1054 (42S22): Unknown column 'password' in 'field list'

神馬情況,'password'列不存在,這個地方花了好多時間,原因其實很簡單啊啊。

MySQL 5.7 版本中 user表中的密碼字段列名稱變了,從password變成了authentication_string
可以直接看一下user表中的字段

1
2
mysql> use mysql;
mysql> desc user;

部分字段如下

Field Type Null Key Default Extra
Host char(60) NO PRI    
User char(16) NO PRI    
authentication_string text YES   NULL  
password_expired enum(‘N’,’Y’) NO   N  
password_last_changed timestamp YES   NULL  
password_lifetime smallint(5) unsigned YES   NULL  

最后用如下如下語句修改

1
2
3
4
5
6
mysql> update mysql.user set authentication_string=PASSWORD('123456') where user='root';
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 1

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

修改成功,再次進入控制台

1
mysql> show databases;

這次可以進去了,但是隨便執行一條語句依然報錯啊

1
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

按照提示再次設置密碼

1
2
mysql> set password for root@localhost=password('12345');
Query OK, 0 rows affected, 1 warning (0.00 sec)

這次OK了,接下來就可以正常建表、查詢 使用了。

 

mysql的啟動和停止

mysql.server是包含在和 MySQL Unix分發包中的啟動腳本,該腳本可以用於LinuxSolaris類似的系統中。這種系統使用 V-style(區別與BSD-style)系統運行目錄來啟動和停止服務。

mysql.server可以在MySQL安裝目錄中的support-files文件夾中找到,如果使用的是rpm安裝包方式(與之相對應的另一種安裝包方式是dpkg),mysql.server腳本會被安裝在/etc/init.d,而且會被重命名mysql

另外一些發行版本會重命名為mysqld

1. Linux下啟動/停止/重啟啟動命令如下:

/etc/init.d/mysqld start

/etc/init.d/mysqld stop

/etc/init.d/mysqld restart

2. Linux下以Service方式啟動/停止/重啟MySQL命令:

service mysqld start

service mysqld stop

service mysqld restart

or

service mysql start

service mysql stop

service mysql restart

service 命令就是調用/etc/init.d/下邊的腳本來啟動服務,等於直接使用/etc/init.d/* start

service 描述中講到
DESCRIPTION
service runs a System V init script in as predictable environment as possible, removing most environment variables and with current working directory set to /. The SCRIPT parameter specifies a System V init script, located in /etc/init.d/SCRIPT. 

3. MAC OX命令行啟動/停止/重啟MySQL命令:

sudo /usr/local/mysql/support-files/mysql.server start

sudo /usr/local/mysql/support-files/mysql.server stop

sudo /usr/local/mysql/support-files/mysql.server restart

參考1:通過VPS加深對Linux命令的一些理解

參考2:MySQL命令行啟動


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM