MySQL其实是一个跨平台的轻量级数据库,平时开发会用到很多。有写程序可能要跨平台开发,接下来我就介绍一下如何跨平台使用Mysql。

这里所谓的跨平台就是Windows,Linux,Mac共同用一套Mysql配置包括所有用户和数据库等等。

原理:其实很简单,就是配置的时候使用同一个文件夹存放即可。由此也可以知道,Mysql的安装文件和运行程序并不重要,备份的时候只要备份存放数据的文件夹即可,下次重装或换设配时,设置到这个目录即可。

下面是各个平台的安装教程:

安装前言:本教程中使用的都是zip版的安装方式,这样更加方便,跨平台更容易。

安装中所需要的配置文件信息,Windows下文件命名为My.ini,Mac和Linux下为My.cnf

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]

# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin

# These are commonly set, remove the # and set as required.
basedir = *此处填写zip解压的Mysql目录,Windows下目录最好打引号如"D:\\MysqlData",Mac和Linux不需要引号,如/media/*/Mysql。下同*
datadir = *此处填写存放信息的目录,跨平台关键就在这里,要跨平台在这里填写不同平台下的同一个目录路径就行了,目录自己随意*
port = 3306
# server_id = .....
character_set_server=utf8

# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[client]
port=3306
default-character-set=utf8

一、Windows

1.my.ini的配置

修改
basedir = "D:\\Mysql"(解压的mysql目录)
datadir = "D:\\MysqlData"(Mysql信息和数据库的存放目录)

my.ini放到解压的mysql的目录下

2.环境的配置
#例如:环境变量设置, 新建变量名 MYSQL_HOME , 变量值为 MySQL 安装目录路径, 这里为D:\Mysql(安装路径);在环境变量的 Path 变量中添加 %MYSQL_HOME%\bin;

3.以管理员权限打开命令行,执行: mysqld --initialize --user=mysql --console,并记录下密码

4.执行安装服务命令: mysqld -install

5.执行启动服务命令: net start mysql

6.执行:mysql -u root -p

7.输入刚才的密码

8.执行改密码命令:set password = password('password');(加上最后的分号)

如果已经安装过mysql了,datadir中在其他平台上使用过这个目录了或者备份过来的目录,省去3和6~8。

二、Mac

1.my.cnf的配置

修改
basedir = /Volumes/*/Mysql (解压的mysql目录)
datadir = /Volumes/*/MysqlData (Mysql信息和数据库的存放目录)

复制my.cnf到/etc目录下,可在root权限或sudo下使用cp命令

2.配置环境变量

su
密码
nano /etc/profile
在文件后面添加
{
MYSQL_HOME="/Volumes/*/mysql"(mysql路径)
PATH=".:$PATH:$MYSQL_HOME/bin"
export MYSQL_HOME
}
保存退出
source /etc/profile

3.以管理员权限打开命令行,执行: mysqld --initialize --user=mysql --console,并记录下密码

4.执行安装服务命令: mysqld -install

5.执行启动服务命令: cd到相应的mysql目录执行./bin/mysqld_safe(不会开机自动启用Mysql服务,所以用到的时候需要启用,最好写一个sh执行文件)

6.执行:mysql -uroot -p

7.输入刚才的密码

8.执行改密码命令:set password = password('password');(加上最后的分号)

9.扩展:关闭MySql cd到相应的mysql目录执行mysqladmin -uroot -p shutdown

如果已经安装过mysql了,datadir中在其他平台上使用过这个目录了或者备份过来的目录,省去3和6~8。

三、Linux

1.my.cnf的配置

修改
basedir = /media/*/Mysql (解压的mysql目录)
datadir = /media/*/MysqlData (Mysql信息和数据库的存放目录)

复制my.cnf到/etc目录下,可在root权限或sudo下使用cp命令

2.配置环境变量

su
密码
sudo gedit ~/.bashrc
在文件后添加
{
export MYSQL_HOME=/media/qingyi/DevelopmentTools/Linux/mysql(mysql路径)
export PATH=${MYSQL_HOME}/bin:$PATH
}
保存退出
#source ~/.bashrc

3.以管理员权限打开命令行,执行: mysqld --initialize --user=mysql --console,并记录下密码

4.执行安装服务命令: mysqld -install

5.执行启动服务命令: cd到相应的mysql目录执行./bin/mysqld_safe

6.执行:mysql -uroot -p

7.输入刚才的密码

8.执行改密码命令:set password = password('password');(加上最后的分号)

9.扩展:关闭MySql cd到相应的mysql目录执行mysqladmin -uroot -p shutdown

如果已经安装过mysql了,datadir中在其他平台上使用过这个目录了或者备份过来的目录,省去3和6~8。

Mysql跨平台(Windows,Linux,Mac)使用与安装的更多相关文章

  1. 手把手教你Windows Linux双系统的安装与卸载

    作者:-叶丶知秋 链接:https://blog.csdn.net/fanxueya1322/article/details/90205143 转载请保留出处 良许前言: 后台突然有很多小伙伴留言想看 ...

  2. MySQL For Windows Zip解压版安装

    前言 Windows 下 MySQL 有msi和zip解压安装版两种,而zip版只需解压并做简单配置后就能使用,我个人比较喜欢这种方式. 注意我们这里说的MySQL是指MySQL服务器,有很多初学的同 ...

  3. Windows和Mac系统下安装Docker

    在windows和mac系统中使用Docker Desktop安装Docker对系统的要求是很高的. 对于 Windows 系统来说,安装 Docker for Windows 需要符合以下条件: 必 ...

  4. IDA Pro Disassembler 6.8.15.413 (Windows, Linux, Mac)

    IDA: What's new in 6.8 Highlights This is mainly a maintenance release, so our focus was on fixing b ...

  5. windows/Linux/Mac下安装maven,maven作用

    Linux下安装maven 1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.3.9-bin.tar.gz,下载可以使用wget命令: 2.进入下 ...

  6. Maven的安装文字版(Windows/Linux/Mac)

    以下内容引用自https://ayayui.gitbooks.io/tutorialspoint-maven/content/book/maven_environment_setup.html,安装信 ...

  7. pip 直接安装tar.gz zip文件包 (windows linux mac 可用)

    在不能连接外网的机器上安装python的各种包,解压安装要人工输入多条命令: tar -zxvf Flask-WTF-0.10.0.tar.gz cd Flask-WTF-0.10.0 python ...

  8. Windows/Linux/Mac下安装mvn

    Step1: 去官网地址下载 http://maven.apache.org/download.cgi Step2: 解压并且移动到指定到目录下 Step3: 配置环境变量并使之生效 .bash_pr ...

  9. pycharm2020.2破解版教程激活码支持Windows Linux Mac系统-中关村老大爷

    听说很多朋友想要PyCharm专业版2020.2的破解教程.现在来了,亲测破解成功.支持mac linux windows系统.本教程提供官方安装包.激活码和注册补丁. 本教程仅供学习和讨论,禁止商业 ...

随机推荐

  1. OOP多态和继承要点

         早期绑定和多态 C#函数重载的签名规则是用参数的类型和数量判断,而不是函数的名字. 函数返回值不作为重载签名. 修饰符不作为签名的一部分,如static 同函数中,多个参数名称要唯一 ref ...

  2. Bootstrap系列 -- 38. 基础导航条

    在制作一个基础导航条时,主要分以下几步: 第一步:首先在制作导航的列表(<ul class=”nav”>)基础上添加类名“navbar-nav” 第二步:在列表外部添加一个容器(div), ...

  3. [USACO2003][poj2112]Optimal Milking(floyd+二分+二分图多重匹配)

    http://poj.org/problem?id=2112 题意: 有K个挤奶器,C头奶牛,每个挤奶器最多能给M头奶牛挤奶. 每个挤奶器和奶牛之间都有一定距离. 求使C头奶牛头奶牛需要走的路程的最大 ...

  4. 深入理解C#泛型

    前面两篇文章介绍了C#泛型的基本知识和特性,下面我们看看泛型是怎么工作的,了解一下泛型内部机制. 泛型内部机制 泛型拥有类型参数,通过类型参数可以提供"参数化"的类型,事实上,泛型 ...

  5. SQL删除重复的记录(只保留一条)

    首先新建表: --创建示例表 CREATE TABLE t ( id ,) PRIMARY KEY, a ), b ) ) --插入数据 INSERT INTO t SELECT 'aa','bb' ...

  6. 名词释义(ActiveMQ 和 Webservice)

    ActiveMQ一般用来做消息通信,特别是异步的消息处理,把同步的处理变成异步消息,使得系统解耦.消峰平谷. Webservice则是一种RPC,用来远程调用服务,达到打通系统.服务复用的目的. 其实 ...

  7. poj 3463 最短路与次短路&&统计个数

    题意:求最短路和比最短路长度多1的次短路的个数 本来想图(有)方(模)便(版)用spfa的,结果妹纸要我看看dijkstra怎么解.... 写了三遍orz Ver1.0:堆优化+邻接表,WA //不能 ...

  8. Dancing Links初学记

    记得原来备战OI的时候,WCX大神就研究过Dancing Links算法并写了一篇blog.后来我还写了个搜索策略的小文章( http://www.cnblogs.com/pdev/p/3952279 ...

  9. CMD修复

    应该命令的路径被修改了. 试下在cmd下打入 path  命令看看.以下是正确的显示. PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\ ...

  10. 【Beta阶段】发布说明

    在经历Beta阶段紧张的开发后,本次Beta阶段取得的成果虽然不如Alpha阶段多,但是也算是做到了稳中求进,一共预想了三个feature,最终做出了预想的两个feature. 新功能说明 新的主页: ...