美文网首页
macOS安装MySQL数据库

macOS安装MySQL数据库

作者: 遥遥领先M | 来源:发表于2017-06-08 15:35 被阅读127次

使用Homebrew安装MySQL

brew install mysql

配置自启动

mkdir -p ~/Library/LaunchAgents

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

find /usr/local/Cellar/mysql/ -name "homebrew.mxcl.mysql.plist" -exec cp {} ~/Library/LaunchAgents/ \;

launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

修改mysql密码

先启动mysql服务

mysql.server start

继续执行mysql_secure_installation

mysql_secure_installation

查看现有的密码策略

mysql> SHOW VARIABLES LIKE 'validate_password%';

参数解释:

validate_password_dictionary_file 指定密码验证的文件路径;
validate_password_length 密码最小长度
validate_password_mixed_case_count 密码至少要包含的小写字母个数和大写字母个数;
validate_password_number_count 密码至少要包含的数字个数
validate_password_policy 密码强度检查等级,对应等级为:0/LOW、1/MEDIUM、2/STRONG,默认为1。

注意:
0/LOW:只检查长度;
1/MEDIUM:检查长度、数字、大小写、特殊字符;
2/STRONG:检查长度、数字、大小写、特殊字符字典文件。
validate_password_special_char_count密码至少要包含的特殊字符数

修改mysql参数配置

mysql> set global validate_password_policy=0;  
Query OK, 0 rows affected (0.05 sec)  
  
mysql>   
mysql>   
mysql> set global validate_password_mixed_case_count=0;  
Query OK, 0 rows affected (0.00 sec)  
  
mysql> set global validate_password_number_count=3;  
Query OK, 0 rows affected (0.00 sec)  
  
mysql> set global validate_password_special_char_count=0;  
Query OK, 0 rows affected (0.00 sec)  
  
mysql> set global validate_password_length=3;  
Query OK, 0 rows affected (0.00 sec)  

修改简单密码:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123');  
Query OK, 0 rows affected, 1 warning (0.00 sec)  
更新MySQL
brew upgrade mysql
关闭MySQL服务
mysql.server stop
重启MySQL服务
mysql.server restart
查看版本
mysql --version
屏幕快照 2018-01-29 16.41.49.png
进入数据库,数据库默认无密码直接回车两次就好
mysql -u root -p
修改mysql密码

苹果->系统偏好设置->最下边点mysql 在弹出页面中 关闭mysql服务(点击stop mysql server

进入终端输入:cd /usr/local/mysql/bin/
回车后 登录管理员权限 sudo su
回车后输入以下命令来禁止mysql验证功能 ./mysqld_safe --skip-grant-tables &
回车后mysql会自动重启(偏好设置中mysql的状态会变成running)

输入命令 ./mysql
回车后,输入命令 FLUSH PRIVILEGES
回车后,输入命令 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('你的新密码')
至此,密码修改完成,可以成功登陆

卸载

brew remove mysql
brew cleanup
sudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
launchctl unload -w~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
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*
/usr/local/Cellar 里的mysql文件
/usr/local/var 里的mysql文件
/tmp 里的mysql.sock, mysql.sock.lock, my.cnf文件
pid文件和err文件都在/usr/local/var/mysql里确保删除了
brew安装的安装包存储在/usr/local/Library/Cache/Homebrew也可以一并删除
执行brew cleanup

我们打开Navicat添加一个数据库连接


77AA30F1-566B-4629-B44E-513FFE696ADB.png
配置MySQLProvider

在运行项目前,和PostgreSQLProvider需要CPostgreSQL库一样,MySQLProvider也需要为系统安装CMySQL库,这样项目才能够被成功编译:
MacOS:

brew install vapor/tap/cmysql

Ubuntu:

sudo apt-get install cmysql
添加MySQL库的依赖
import PackageDescription
let package = Package(
    name: "Ranking_Service", // Perfect的工程名 可自行修改
    targets: [],
    dependencies: [
        .Package(url: "https://github.com/PerfectlySoft/Perfect-HTTPServer.git", majorVersion: 2),
        //MySql数据库依赖包
        .Package(url:"https://github.com/PerfectlySoft/Perfect-MySQL.git", majorVersion: 2, minor: 0)
    ]
)

重新运行命令

swift package generate-xcodeproj
访问MySQL

我们在main.swift文件添加如下代码
添加 import MySQL

let testHost = "127.0.0.1"
let testUser = "root"
// PLEASE change to whatever your actual password is before running these tests
let testPassword = "123456"
let testSchema = "Test"

请求MySQL,下面官方请求MySQL的例子

let dataMysql = MySQL()

public func useMysql(_ request: HTTPRequest, response: HTTPResponse) {

    // need to make sure something is available.
    guard dataMysql.connect(host: testHost, user: testUser, password: testPassword ) else {
        Log.info(message: "Failure connecting to data server \(testHost)")
        return
    }

    defer {
        dataMysql.close()  // defer ensures we close our db connection at the end of this request
    }

    //set database to be used, this example assumes presence of a users table and run a raw query, return failure message on a error
    guard dataMysql.selectDatabase(named: testSchema) && dataMysql.query(statement: "select * from Person limit 1") else {
        Log.info(message: "Failure: \(dataMysql.errorCode()) \(dataMysql.errorMessage())")

        return
    }

    //store complete result set
    let results = dataMysql.storeResults()

    //setup an array to store results
    var resultArray = [[String?]]()

    while let row = results?.next() {
        resultArray.append(row)

    }

    //return array to http response
    response.appendBody(string: "<html><title>Mysql Test</title><body>\(resultArray.debugDescription)</body></html>")
    response.completed()

}

添加路演

var routes = Routes()
routes.add(method: .get, uri: "/t", handler: {
        request, response in
    useMysql(request, response: response)
    }
)

运行工程,打开MySQL,浏览器中打开,访问http://localhost:8181/t
就看到了:[[Optional("id")]]

相关文章

  • macos安装mysql

    macos安装mysql

  • mysql数据库的基础使用

    一、Centos安装MySQL 安装MySQL数据库。 配置MySQL数据库。 远程访问MySQL数据库。 具体详...

  • macOS安装MySQL数据库

    使用Homebrew安装MySQL 配置自启动 修改mysql密码 先启动mysql服务 继续执行mysql_se...

  • MAC中MySQL常用指令

    MySQL常用指令 安装MySQL数据库:brew install mysql 删除MySQL数据库:brew r...

  • node操纵MySQL数据库

    一、安装: 二、安装MySQL数据库1、官网下载好mysql数据库(https://dev.mysql.com/d...

  • MYSQL数据库安装详解

    关系型数据库 1.数据的安装 1.1、mysql数据库的安装 1、打开下载的mysql安装文件,双击运行mysql...

  • MySQL 安装配置

    MySQL安装 首先,下载 MySQL 数据库的安装包:mysql-installer-community-5.7...

  • springboot项目与mysql整合,并使用mybatis框

    1. 安装mysql数据库 mac上可以通过brew命令安装mysql 2. 安装好数据库后,让项目与数据库建...

  • mac配置MySQL

    官网下载并安装MySQL,我下载的版本是mysql-5.7.18-macos10.12-x86_64; 安装完后在...

  • Mac 安装 MySQL

    一、环境基础 系统:macOS 10.15.5mysql:8.0.20 二、安装 去mysql官网下载安装包,一路...

网友评论

      本文标题:macOS安装MySQL数据库

      本文链接:https://www.haomeiwen.com/subject/wjizfxtx.html