macOS/Ubuntu - 安装MySQL

文章目录

  • macOS - 安装MySQL
    • 一、安装
      • 方法一:官网下载安装包
      • 方法二:brew
      • 报错1:Could not symlink include/mysql
      • 报错2:mysqld_safe A mysqld process already exists
    • mac上忘记mysql密码完美解决方案
    • 二、卸载 mysql
    • 三、macOS 上的数据库工具
  • Ubuntu 安装 mysql
    • 一、安装 mysql
      • 卸载 mysql
    • 二、配置
      • 设置远程访问
        • 备注
    • 三、Ubuntu mysql 工具 - workbench
      • 1、安装 workbench
      • 2、使用 workbench
  • mysql 常见使用
    • 问题&报错处理


macOS - 安装MySQL

一、安装

方法一:官网下载安装包

https://blog.csdn.net/pansanday/article/details/54915916
安装过程中,记得注意弹窗,有一个会显示密码


方法二:brew

参考:https://blog.csdn.net/e421083458/article/details/46789971

1、安装

$ brew install mysql  

2、设置开机自启动

ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents  

3、开启服务

mysql.server start  

报错1:Could not symlink include/mysql

The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink include/mysql
/usr/local/include is not writable.

You can try again using:
  brew link mysql

原因:无法写入 /usr/local/include 文件夹
解决方法:
/usr/local/include 看看
我的 /usr/local 下面并没有 include 文件夹,于是我就新建了一个;然后再使用 brew link mysql,这次报错:

Error: Could not symlink lib/libmysqlclient.20.dylib
/usr/local/lib is not writable.

我的 /usr/local 下面并没有 lib 文件夹,于是我就新建了一个 lib
再次运行 brew link mysql 就成功了。

macOS/Ubuntu - 安装MySQL_第1张图片


报错2:mysqld_safe A mysqld process already exists

mysqld_safe A mysqld process already exists

mac上忘记mysql密码完美解决方案

https://blog.csdn.net/xiaozhuanddapang/article/details/53185775


二、卸载 mysql

要卸载干净的话,要写在很多地方,否则会影响下一次安装;
比如偏好设置、开机启动设置等,也要卸载哦。


brew remove mysql  
brew cleanup  
launchctl unload -w ~/Library/LaunchAgents/com.mysql.mysqld.plist  
rm ~/Library/LaunchAgents/com.mysql.mysqld.plist  

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*

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*

vim /etc/hostconfig  
edit /etc/hostconfig and remove the line MYSQLCOM=-YES-

三、macOS 上的数据库工具

如果你使用反编译版本工具,下载安装时,如果报文件损坏,需要设置:安全性与隐私—>允许任何来源。
如果没有 允许任何来源选项,可命令行输入下面命令来解决:

sudo spctl --master-disable


Ubuntu 安装 mysql

一、安装 mysql

# 查看版本
mysql -V
# mysql  Ver 14.14 Distrib 5.7.36, for Linux (x86_64) using  EditLine wrapper
# 更新安装包索引
sudo apt-get update

# 安装 mysql-server
sudo apt-get install mysql-server

卸载 mysql

sudo apt-get autoremove --purge mysql-server
sudo apt-get remove mysql-server
sudo apt-get autoremove mysql-server
sudo apt-get remove mysql-common 

二、配置

sudo mysql_secure_installation
# 设置密码等

# 检查mysql服务状态
systemctl status mysql.service


设置远程访问

1、修改 ip 配置

如果数据库配置文件名为 mysql.conf, 需要进入配置文件夹:

cd /etc/mysql/mysql.conf.d

修改 配置文件mysqld.conf, 注释掉:

# 表示只允许本地访问,注释掉该行
bind_address=127.0.0.1   #  0.0.0.0

2、设置用户权限

# 使用根用户进入
sudo mysql -uroot -p


GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";

## 创建数据库weixx
CREATE DATABASE data;

## 创建用户 wxx(密码654321) 并允许wxx用户可以从任意机器上登入mysql的weixx数据库
GRANT ALL PRIVILEGES ON data.* TO wxx@"%" IDENTIFIED BY "654321"; 
 
# 刷新权限
FLUSH PRIVILEGES; 
  • 123456 为你给新增权限用户设置的密码
  • %代表所有主机,也可以是具体的ip;

3、重启mysql 服务

service mysql stop
service mysql start

以上三步都需要,否则远程连接的时候,可能会报如下错误:
ERROR 2003 (HY000): Can't connect to MySQL server on '10.0.100.152' (61)


备注

古早的文章上会说修改 /etc/mysql/my.cnf 这个文件,实际这个文件内容如下:

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

大概是代表,配置文件在这两个文件夹中;我们不处理这个。


三、Ubuntu mysql 工具 - workbench

1、安装 workbench

寻找对应的版本的 workbench

https://downloads.mysql.com/archives/workbench/

这里我使用 8.0.23

macOS/Ubuntu - 安装MySQL_第2张图片


安装deb文件

sudo dpkg -i  '/home/shushu/Downloads/mysql-workbench-community_8.0.23-1ubuntu18.04_amd64.deb' 

下载deb 时,浏览器会提示,是否直接打开deb,如果选择是,则会启动安装器来安装。
如果顺利可以安装成功;但安装失败,会没有提示;所以如果安装失败,建议使用上述命令来安装。

macOS/Ubuntu - 安装MySQL_第3张图片

比如我安装失败,会报如下错误:


dpkg: 依赖关系问题使得 mysql-workbench-community 的配置工作不能继续:
 mysql-workbench-community 依赖于 libatkmm-1.6-1v5 (>= 2.24.0);然而:
  未安装软件包 libatkmm-1.6-1v5。
 mysql-workbench-community 依赖于 libglibmm-2.4-1v5 (>= 2.54.0);然而:
  未安装软件包 libglibmm-2.4-1v5。
 mysql-workbench-community 依赖于 libgtkmm-3.0-1v5 (>= 3.22.0);然而:
  未安装软件包 libgtkmm-3.0-1v5。
 mysql-workbench-community 依赖于 libpcrecpp0v5 (>= 7.7);然而:
  未安装软件包 libpcrecpp0v5。
 mysql-workbench-community 依赖于 libpython3.7 (>= 3.7.0);然而:
  未安装软件包 libpython3.7。
 mysql-workbench-community 依赖于 libsigc++-2.0-0v5 (>= 2.8.0);然而:
  未安装软件包 libsigc++-2.0-0v5。
 mysql-workbench-community 依赖于 libzip4 (>= 0.10);然而:
  未安装软件包 libzip4。

dpkg: 处理软件包 mysql-workbench-community (--install)时出错:
 依赖关系问题 - 仍未被配置
正在处理用于 gnome-menus (3.13.3-11ubuntu1.1) 的触发器 ...
正在处理用于 desktop-file-utils (0.23-1ubuntu3.18.04.2) 的触发器 ...
正在处理用于 mime-support (3.60ubuntu1) 的触发器 ...
正在处理用于 hicolor-icon-theme (0.17-2) 的触发器 ...
正在处理用于 shared-mime-info (1.9-2) 的触发器 ...
在处理时有错误发生:
 mysql-workbench-community


处理方法:使用下述命令安装依赖包

sudo apt-get -f install

2、使用 workbench

双击应用程序中的 蓝色海豚 图标,打开workbench应用。

macOS/Ubuntu - 安装MySQL_第4张图片


https://www.cnblogs.com/JJ-huang/p/11436737.html
macOS/Ubuntu - 安装MySQL_第5张图片



mysql 常见使用

从 cmd 进入 mysql 命令行模式

  • root 用户登录
mysql -uroot -p

输入密码,即可进入


  • 其他用户登录
    xx 用户登录 db1 这个库
mysql -u xx -p db1

如果出现:

mysqld: Can't change dir to '/var/lib/mysql/' (Errcode: 13 - Permission denied)

修改此文件夹权限
sudo chmod


  • 退出
mysql> exit;

  • 查看数据库
mysql> show databases

结果:

    -> ;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| db_demo0           |
| db_demo1           |
| sys                |
+--------------------+

  • 创建数据库 db_demo1
mysql> create database db_demo1 charset utf8;
  • 关闭数据库
mysql> drop database db_demo1

  • 查看表
mysql> use db_demo0; # 进入数据库db_demo0
mysql> show tables;

  • 查看 users表的字段信息
mysql> desc users;

  • 创建表,并使用 utf-8 编码
CREATE DATABASE IF NOT EXISTS db01 DEFAULT CHARSET utf8 COLLATE utf8_general_ci; 

  • 创建用户 test1
create user 'test'@'localhost' identified by '1234';

如果不限制该用户ip, 可写为

create user 'test'@'%' identified by '1234';

  • 授予用户test1 通过外网IP对数据库 db01 的全部权限
grant all privileges on 'db01'.* to 'test1'@'%'; 
flush privileges; 

  • 查看用户 test1 的权限
show grants for test1;

问题&报错处理

报错:

is blocked because of many connection errors ;unblock with ‘mysqladmin flush-hosts’


# 进入 mysql
mysql -uroot -p

# 刷新hosts
flush hosts;

忘记密码


Ubuntu mysql 忘记 root 密码,第一种亲测有效
https://blog.csdn.net/xiamoyanyulrq/article/details/83041724


你可能感兴趣的:(软件工具/使用技巧,Mac,mysql,Mac,mysql,忘记密码,Mac,mysql,安装,Ubuntu,workbench)