mac上安装个mysql server
使用图形化界面安装了myql.安装是成功了,但是启动是失败的。
折腾了几次,放弃了。
这篇文章方式操作,然而没有work.
https://www.jianshu.com/p/fd3aae701db9
使用brew安装
问题1:下载失败,翻了个墙处理
ali-EA64E140-FF9A-5321-9934-1F01C42226F6:usr qz.zzm$ brew install mysql
==> Downloading https://homebrew.bintray.com/bottles-portable/portable-ruby-2.3.3.leopard_64.bottle.1.tar.gz
curl: (22) The requested URL returned error: 404 Not Found
Error: Download failed: https://homebrew.bintray.com/bottles-portable/portable-ruby-2.3.3.leopard_64.bottle.1.tar.gz
Error: Failed to install vendor Ruby.
ali-EA64E140-FF9A-5321-9934-1F01C42226F6:usr qz.zzm$
好吧,查了下:
有个网友说是因为 “墙”。所以,”加速”了下
https://segmentfault.com/q/1010000011403464
image.png问题2:基础不足,降级处理
:usr me$ brew install mysql
Updating Homebrew...
mysql: macOS Sierra or newer is required.
Error: An unsatisfied requirement failed this build.
上面提示要升级Mac OS的版本。然后我就准备升级。
队友提醒可以下早的版本的,搜关键字:“brew 安装制定版本的mysql”,到了
http://blog.58share.com/?p=367
里面有个指令可以用。
:usr me$ brew search mysql
==> Formulae
automysqlbackup mysql-client mysql-connector-c++ mysql-utilities mysql@5.7
mysql mysql-cluster mysql-sandbox mysql@5.5 mysqltuner
mysql++ mysql-connector-c mysql-search-replace mysql@5.6
==> Casks
homebrew/cask/mysql-connector-python homebrew/cask/mysql-utilities homebrew/cask/sqlpro-for-mysql
homebrew/cask/mysql-shell homebrew/cask/navicat-for-mysql
:usr me$ brew insatll mysql@5.7
:usr me$ brew install mysql@5.7
Updating Homebrew...
==> Installing dependencies for mysql@5.7: openssl
==> Installing mysql@5.7 dependency: openssl
==> Downloading https://homebrew.bintray.com/bottles/openssl-1.0.2o_2.el_capitan.bottle.tar.gz
######################################################################## 100.0%
==> Pouring openssl-1.0.2o_2.el_capitan.bottle.tar.gz
==> Caveats
A CA file has been bootstrapped using certificates from the SystemRoots
keychain. To add additional certificates (e.g. the certificates added in
the System keychain), place .pem files in
/usr/local/etc/openssl/certs
and run
/usr/local/opt/openssl/bin/c_rehash
This formula is keg-only, which means it was not symlinked into /usr/local,
because Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries.
If you need to have this software first in your PATH run:
echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile
For compilers to find this software you may need to set:
LDFLAGS: -L/usr/local/opt/openssl/lib
CPPFLAGS: -I/usr/local/opt/openssl/include
==> Summary
馃嵑 /usr/local/Cellar/openssl/1.0.2o_2: 1,792 files, 12.2MB
==> Installing mysql@5.7
==> Downloading https://homebrew.bintray.com/bottles/mysql@5.7-5.7.23.el_capitan.bottle.tar.gz
######################################################################## 100.0%
==> Pouring mysql@5.7-5.7.23.el_capitan.bottle.tar.gz
==> /usr/local/Cellar/mysql@5.7/5.7.23/bin/mysqld --initialize-insecure --user=qz.zzm --basedir=/usr/local/Cellar/mysql@5.7/5.7.23 --datadir=/
==> Caveats
We've installed your MySQL database without a root password. To secure it run:
mysql_secure_installation
MySQL is configured to only allow connections from localhost by default
To connect run:
mysql -uroot
This formula is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.
If you need to have this software first in your PATH run:
echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> ~/.bash_profile
For compilers to find this software you may need to set:
LDFLAGS: -L/usr/local/opt/mysql@5.7/lib
CPPFLAGS: -I/usr/local/opt/mysql@5.7/include
To have launchd start mysql@5.7 now and restart at login:
brew services start mysql@5.7
Or, if you don't want/need a background service you can just run:
/usr/local/opt/mysql@5.7/bin/mysql.server start
==> Summary
馃嵑 /usr/local/Cellar/mysql@5.7/5.7.23: 317 files, 235.2MB
==> Caveats
==> openssl
A CA file has been bootstrapped using certificates from the SystemRoots
keychain. To add additional certificates (e.g. the certificates added in
the System keychain), place .pem files in
/usr/local/etc/openssl/certs
and run
/usr/local/opt/openssl/bin/c_rehash
This formula is keg-only, which means it was not symlinked into /usr/local,
because Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries.
If you need to have this software first in your PATH run:
echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile
For compilers to find this software you may need to set:
LDFLAGS: -L/usr/local/opt/openssl/lib
CPPFLAGS: -I/usr/local/opt/openssl/include
==> mysql@5.7
We've installed your MySQL database without a root password. To secure it run:
mysql_secure_installation
MySQL is configured to only allow connections from localhost by default
To connect run:
mysql -uroot
This formula is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.
If you need to have this software first in your PATH run:
echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> ~/.bash_profile
For compilers to find this software you may need to set:
LDFLAGS: -L/usr/local/opt/mysql@5.7/lib
CPPFLAGS: -I/usr/local/opt/mysql@5.7/include
To have launchd start mysql@5.7 now and restart at login:
PATH=$PATH:/usr/local/mysql/bin
brew services start mysql@5.7
PATH=$PATH:/usr/local/opt/mysql@5.7/bin/
Or, if you don't want/need a background service you can just run:
/usr/local/opt/mysql@5.7/bin/mysql.server start
:usr me$
启动与关闭
根据上面的提示
:usr me$ brew services start mysql@5.7
==> Tapping homebrew/services
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-services'...
remote: Counting objects: 14, done.
remote: Compressing objects: 100% (10/10), done.
remote: Total 14 (delta 0), reused 7 (delta 0), pack-reused 0
Unpacking objects: 100% (14/14), done.
Tapped 1 command (43 files, 55.3KB).
==> Successfully started `mysql@5.7` (label: homebrew.mxcl.mysql@5.7)
:usr me$ brew services stop mysql@5.7
Stopping `mysql@5.7`... (might take a while)
==> Successfully stopped `mysql@5.7` (label: homebrew.mxcl.mysql@5.7)
或是:
/usr/local/opt/mysql@5.7/bin/mysql.server start
使用mysql
1.将mysql的命令添加到系统中
(1).进入/usr/local/mysql/bin,查看此目录下是否有mysql
(2).执行vim ~/.bash_profile 在该文件中添加mysql/bin的目录 PATH=$PATH:/usr/local/mysql/bin 添加完成后,按esc,然后输入wq保存。
(3).最后在命令行输入source ~/.bash_profile
参考:https://blog.csdn.net/pansanday/article/details/54915916
:usr me$ mysql -uroot -p
-bash: mysql: command not found
:usr me$ vim ~/.bash_profile
:usr me$ source ~/.bash_profile
:usr me$ mysql -uroot -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
ali-EA64E140-FF9A-5321-9934-1F01C42226F6:usr qz.zzm$
然后不知道为啥?
2.为啥连不上?
开始想要连接上去看看:
-
通过mysql -uroot -p登录mysql, 输入之前保存的密码
-
重置mysql初始密码
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpassword');
但是我怎么使用指令都不行...
:usr me$ mysql -uroot -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
解决Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2) ";
文章说,这个方式是大概率可以执行的,但是我执行后“:
mysql -uroot -h 127.0.0.1 -p
:usr me$ mysql -uroot -h 127.0.0.1 -p
Enter password:
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (61)
才想起来我没有启动服务..
登上去
:usr me$ mysql.server start
Starting MySQL
. SUCCESS!
:usr me$ mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.23 Homebrew
Copyright (c) 2000, 2018, 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.
mysql>
mysql>SET PASSWORD = PASSWORD('123456');
密码就被设定了,然后就可以用这个登录..