Mac安装mysql57
1、准备工作
- 首先从mysql官网下载mysql community server,需要注册oracle账号才能下载:https://downloads.mysql.com/archives/community/
5.7.29版本,下载:macOS 10.14 (x86, 64-bit), Compressed TAR Archive 这个版本 - 然后解压缩,然后赋予权限:chmod -R 777 mysql57
- 再初始化,进入bin目录执行:mysqld --initialize,会生成mysql57/data目录,如果失败则根据原因google或bing,注意会生成一个临时密码:
[Note] A temporary password is generated for root@localhost: 5joc+sPf4iq0 - 最后执行mysqld就可以运行了
2、连接
- 仍是进入bin目录,找到mysql命令,执行:mysql -u root -p
- 然后输入上面的密码(是没有回显的,记得不要输错)
- 回车进入就可以执行mysql命令了
3、更改密码
上面连接后仍不能正常运行,因为使用的是临时密码(而且超级不方便),所以需要更改密码,在mysql> 提示后面输入:alter user ‘root’@‘localhost’ identified by ‘root’
即可将密码改为root,然后就可以执行命令了。
4、其他知识点
4.1、查找配置文件
mysqld --verbose --help | sed -n 12,13p
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf
可以找到默认的配置文件,或者参考:https://stackoverflow.com/questions/580331/determine-which-mysql-configuration-file-is-being-used
4.2、更改数据库默认连接为utf8
refer:https://www.jb51.net/article/167773.htm
修改my.cnf文件:
[client]
default-character-set = utf8
[mysqld]
default-storage-engine = INNODB
character-set-server = utf8
collation-server = utf8_general_ci
然后启动mysqld及mysql后验证:show variables like ‘%char%’;
±-------------------------±--------------------------------------+
| Variable_name | Value |
±-------------------------±--------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
说明OK。
4.3、关闭
如果直接将mysqld的运行窗口关闭,其仍在运行(可以再启动会报错),此时需要在mysql连接中关闭服务,具体是:
1.mysql连接到服务
2.执行:shutdown,可以看到提示已关闭:
mysql> shutdown;
Query OK, 0 rows affected (0.01 sec)
同时mysqld窗口也可以看到关闭的日志:
[Note] Giving 0 client threads a chance to die gracefully
[Note] Shutting down slave threads
[Note] Forcefully disconnecting 0 remaining clients
[Note] Event Scheduler: Purging the queue. 0 events
[Note] Binlog end
[Note] Shutting down plugin 'ngram'
[Note] Shutting down plugin 'partition'
[Note] Shutting down plugin 'BLACKHOLE'
[Note] Shutting down plugin 'ARCHIVE'
[Note] Shutting down plugin 'PERFORMANCE_SCHEMA'
[Note] Shutting down plugin 'MRG_MYISAM'
[Note] Shutting down plugin 'MyISAM'
[Note] Shutting down plugin 'INNODB_SYS_VIRTUAL'
[Note] Shutting down plugin 'INNODB_SYS_DATAFILES'
[Note] Shutting down plugin 'INNODB_SYS_TABLESPACES'
[Note] Shutting down plugin 'INNODB_SYS_FOREIGN_COLS'
[Note] Shutting down plugin 'INNODB_SYS_FOREIGN'
[Note] Shutting down plugin 'INNODB_SYS_FIELDS'
[Note] Shutting down plugin 'INNODB_SYS_COLUMNS'
[Note] Shutting down plugin 'INNODB_SYS_INDEXES'
[Note] Shutting down plugin 'INNODB_SYS_TABLESTATS'
[Note] Shutting down plugin 'INNODB_SYS_TABLES'
[Note] Shutting down plugin 'INNODB_FT_INDEX_TABLE'
[Note] Shutting down plugin 'INNODB_FT_INDEX_CACHE'
[Note] Shutting down plugin 'INNODB_FT_CONFIG'
[Note] Shutting down plugin 'INNODB_FT_BEING_DELETED'
[Note] Shutting down plugin 'INNODB_FT_DELETED'
[Note] Shutting down plugin 'INNODB_FT_DEFAULT_STOPWORD'
[Note] Shutting down plugin 'INNODB_METRICS'
[Note] Shutting down plugin 'INNODB_TEMP_TABLE_INFO'
[Note] Shutting down plugin 'INNODB_BUFFER_POOL_STATS'
[Note] Shutting down plugin 'INNODB_BUFFER_PAGE_LRU'
[Note] Shutting down plugin 'INNODB_BUFFER_PAGE'
[Note] Shutting down plugin 'INNODB_CMP_PER_INDEX_RESET'
[Note] Shutting down plugin 'INNODB_CMP_PER_INDEX'
[Note] Shutting down plugin 'INNODB_CMPMEM_RESET'
[Note] Shutting down plugin 'INNODB_CMPMEM'
[Note] Shutting down plugin 'INNODB_CMP_RESET'
[Note] Shutting down plugin 'INNODB_CMP'
[Note] Shutting down plugin 'INNODB_LOCK_WAITS'
[Note] Shutting down plugin 'INNODB_LOCKS'
[Note] Shutting down plugin 'INNODB_TRX'
[Note] Shutting down plugin 'InnoDB'
[Note] InnoDB: FTS optimize thread exiting.
[Note] InnoDB: Starting shutdown...
[Note] InnoDB: Dumping buffer pool(s) to **/mysql57/data/ib_buffer_pool
[Note] InnoDB: Buffer pool(s) dump completed at 200626 17:45:04
[Note] InnoDB: Shutdown completed; log sequence number 2708272
[Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
[Note] Shutting down plugin 'MEMORY'
[Note] Shutting down plugin 'CSV'
[Note] Shutting down plugin 'sha256_password'
[Note] Shutting down plugin 'mysql_native_password'
[Note] Shutting down plugin 'binlog'
[Note] mysqld: Shutdown complete