mac下mysql的卸载和安装

1. mysql的卸载

  • 1 sudo rm /usr/local/mysql
  • 2 sudo rm -rf /usr/local/mysql*
  • 3 sudo rm -rf /Library/StartupItems/MySQLCOM
  • 4 sudo rm -rf /Library/PreferencePanes/My*
  • 5 vim /etc/hostconfig (and removed the line MYSQLCOM=-YES-)
  • 6 rm -rf ~/Library/PreferencePanes/My*
  • 7 sudo rm -rf /Library/Receipts/mysql*
  • 8 sudo rm -rf /Library/Receipts/MySQL*
  • 9 sudo rm -rf /var/db/receipts/com.mysql.*

在我的mac上没有Library文件夹,故6、7、8操作执行

2.下载mysql免费版(可以用brew install mysql 但是安装的都是最新的版本)

  • https://downloads.mysql.com/archives/community/

3.下载后dmg文件后,双击后一步步安转

4.安装最后一步会生成一个密码,此密码是mysql自动生成的密码

5. 启动mysql服务

sudo mysqld --user=mysql &    //不能用root用户启动

输入刚才生成的密码


5. 修改数据库密码

  • SET PASSWORD FOR'root'@'localhost'=PASSWORD('new password');
  • flush privileges;

6. 安装mysql后配置环境变量,以便使用mysql命令

  • vi ~/.zshrc 不存在就新建
  • 然后输入 export PATH=${PATH}:/usr/local/mysql/bin
  • 保存后 source ~/.zshrc

7. 启动、停止和重启

   

  • 启动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

   8. 在/usr/local/mysql/support-files创建my.cnf文件(mac默认没有此文件),并给于666权限,才可以编辑

    

# 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 = 128K  

# 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 

  

  •   touch my.cnf
  •   sudo chmod 666 my.cnf

   修改完后,再执行

  •   sudo chmod 664 /etc/my.cnf

   9.查询mysql进程

  •  mysql.server status

   10.查询mysql状态

  •  mysql.server status
原文地址:https://www.cnblogs.com/guanbin-529/p/10144562.html