mac安裝mysql5.7.25並連接本地Sequel pro(踩坑日記系列)

x

 

1、下載mysql5.7.25安裝包

下載鏈接

默認是最新版本,點擊查看以前的版本,選擇5.7.25版本的dmg文件進行下載。

事實證明最新版安裝時候會有很多問題!所以儘量選擇比較穩定的版本。

2、點擊dmg文件安裝

注意記住最後一步的隨機密碼(或者截圖)!以後改密碼要用!

mac系統會有通知

3、更改mysql默認密碼

檢查mysql服務是否啓動,默認安裝後自動啓動。在系統偏好設置->點擊mysql服務->啓動服務

進入mysql bin目錄下

默認地址:

cd /usr/local/mysql-5.7.25xxx/bin

修改密碼:

mysql -u root -p password newpass

新密碼登錄:

mysql -u root -p

4、連接本地 Sequel pro

如果standard方式無法連接就試一下3307端口號;

獲者Socket方式連接。

5、MySQL server PID file could not be found!

類似於mysql server PID的報錯:

參考文章:https://blog.csdn.net/u010098331/article/details/50752667/

6、mysql服務無法開啓(自定義mysql配置文件)

因爲mysql5.7.25沒有在本地生成配置文件,我在/etc/建立my.cnf文件時數據木留設置錯誤,把這個文件刪除即可

爲了解決接下來的問題,最好在/etc/新建my.cnf配置文件,mysql會優先讀取(需要先修改文件權限)

my.cnf

# Example MySQL config file for small systems.  
#  
# This is for a system with little memory (<= 64M) where MySQL is only used  
# from time to time and it's important that the mysqld daemon  
# doesn't use much resources.  
#  
# MySQL programs look for option files in a set of  
# locations which depend on the deployment platform.  
# You can copy this option file to one of those  
# locations. For information about these locations, see:  
# http://dev.mysql.com/doc/mysql/en/option-files.html  
#  
# In this file, you can use all long options that a program supports.  
# If you want to know which options a program supports, run the program  
# with the "--help" option.  

# The following options will be passed to all MySQL clients  
[client]  
default-character-set=utf8  
#password   = your_password  
port        = 3306 
socket      = /tmp/mysql.sock  

# Here follows entries for some specific programs  

# The MySQL server   
[mysqld]  
default-storage-engine=INNODB  
character-set-server=utf8  
collation-server=utf8_general_ci  
port        = 3306 
socket      = /tmp/mysql.sock  
skip-external-locking  
key_buffer_size = 16K  
max_allowed_packet = 1M  
table_open_cache = 4 
sort_buffer_size = 64K  
read_buffer_size = 256K  
read_rnd_buffer_size = 256K  
net_buffer_length = 2K  
thread_stack = 512K  
# Don't listen on a TCP/IP port at all. This can be a security enhancement,  
# if all processes that need to connect to mysqld run on the same host.  
# All interaction with mysqld must be made via Unix sockets or named pipes.  
# Note that using this option without enabling named pipes on Windows  
# (using the "enable-named-pipe" option) will render mysqld useless!  
#   
#skip-networking  
server-id   = 1

# Uncomment the following if you want to log updates  
log-bin=mysql-bin  

# binary logging format - mixed recommended  
#binlog_format=mixed  

# Causes updates to non-transactional engines using statement format to be  
# written directly to binary log. Before using this option make sure that  
# there are no dependencies between transactional and non-transactional  
# tables such as in the statement INSERT INTO t_myisam SELECT * FROM  
# t_innodb; otherwise, slaves may diverge from the master.  
#binlog_direct_non_transactional_updates=TRUE  

# Uncomment the following if you are using InnoDB tables  
#innodb_data_home_dir = /usr/local/mysql/data  
#innodb_data_file_path = ibdata1:10M:autoextend  
#innodb_log_group_home_dir = /usr/local/mysql/data  
# You can set .._buffer_pool_size up to 50 - 80 %  
# of RAM but beware of setting memory usage too high  
#innodb_buffer_pool_size = 16M  
#innodb_additional_mem_pool_size = 2M  
# Set .._log_file_size to 25 % of buffer pool size  
#innodb_log_file_size = 5M  
#innodb_log_buffer_size = 8M  
#innodb_flush_log_at_trx_commit = 1 
#innodb_lock_wait_timeout = 50 

[mysqldump]  
quick  
max_allowed_packet = 16M  

[mysql]  
no-auto-rehash  
# Remove the next comment character if you are not familiar with SQL  
#safe-updates  

[myisamchk]  
key_buffer_size = 8M  
sort_buffer_size = 8M  

[mysqlhotcopy]  
interactive-timeout

[mysqld] 
transaction-isolation=READ-COMMITTED
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

7、MySQL無法重啓報錯Warning: World-writable config file ‘/etc/my.cnf’ is ignored的解決方法

修改文件權限,不能是777,mysql會啓動保護措施忽略此文件

chmod 644 /etc/my.cnf

8、mac命令行下啓動、重啓、關閉mysql服務

#啓動MySQL服務
sudo /usr/local/MySQL/support-files/mysql.server start

#停止MySQL服務
sudo /usr/local/mysql/support-files/mysql.server stop

#重啓MySQL服務
sudo /usr/local/mysql/support-files/mysql.server restart

9、mysql5.7.25與mysql5.6.XX版本問題

mysql命令gruop by報錯this is incompatible with sql_mode=only_full_group_by

查看sql_model參數命令:

SELECT @@GLOBAL.sql_mode;

SELECT @@SESSION.sql_mode;

發現:

ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

第一項默認開啓ONLY_FULL_GROUP_BY

在/etc/my.cnf下添加:

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

重啓服務生效!

10、mac下徹底卸載mysql(上述辦法都無法解決問題時!)

打開終端窗口
使用mysqldump備份你的數據庫將文本文件!
停止數據庫服務器
sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
edit /etc/hostconfig and remove the line MYSQLCOM=-YES-
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章