Python中的mysql应用在Mac和Windows有什么不一样吗?

2020-09-02 18:34发布

是否就像APP在安卓和苹果上,只是因为操作系统不一样,内容都一致呢?

会不会有用哪个版本更加好学好用的

是否就像APP在安卓和苹果上,只是因为操作系统不一样,内容都一致呢?

会不会有用哪个版本更加好学好用的

4条回答
卡卡
2楼 · 2020-09-04 09:03


                  在MacOS环境下安装MySQL服务

                                         作者:尹正杰 

版权声明:原创作品,谢绝转载!否则将追究法律责任。

 

 

  我之前介绍过window环境下安装mysql服务,以及在Linux环境下安装mysql服务,今天我要给大家介绍的是在Mac环境下安装mysql服务。其实安装mysql服务我们也可以像Linux那样,使用brew命令进行安装,但我们此处使用的是绿色方式安装。

 

 

一.下载mysql服务

1>.登录mysql的下载列表

  下载地址:https://dev.mysql.com/downloads/mysql/。如下图所示,点击标红的标签。


 2>.下载DMG版本的mysql安装包

 

3>.跳过登录直接下载mysql服务即可


 

二.安装mysql服务

1>.双击运行下载好的安装包,点击继续


2>.阅读软件许可协议后,点击继续

 

3>.点击安装

 

4>.记住安装的数据库的初始密码(如下图所示,我这里的初始化密码是:M7Rju)ofMFMb)

 

5>.安装成功

 

 

三.启动mysql服务

1>.进入mysql的系统偏好设置


2>.点击mysql服务

 

3>.启动mysql服务

 

4>.服务启动成功

 

 

 

四.修改mysql的默认密码 

1>.登录mysql服务器


 

2>.更改mysql的默认密码


setpasswordfor'root'@'localhost'=PASSWORD('yinzhengjie');



 

3>.使用修改后的密码登录服务器 


 

 

五>.授权mysql远程主机登录

1>.授权只运行的主机


[尹正杰到此一游:~yinzhengjie$mysql-uroot-pyinzhengjie

mysql:[Warning]Usingapasswordonthecommandlineinterfacecanbeinsecure.

WelcometotheMySQLmonitor.Commandsendwith;or\g.

YourMySQLconnectionidis35

Serverversion:5.7.24MySQLCommunityServer(GPL)


Copyright(c)2000,2018,Oracleand/oritsaffiliates.Allrightsreserved.


OracleisaregisteredtrademarkofOracleCorporationand/orits

affiliates.Othernamesmaybetrademarksoftheirrespective

owners.


Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement.


[mysql>

[mysql>

[mysql>

[mysql>

[mysql>grantallprivilegeson*.*to'root'@'172.30.1.%'identifiedby'yinzhengjie';

QueryOK,0rowsaffected,1warning(0.00sec)


[mysql>FLUSHPRIVILEGES;

QueryOK,0rowsaffected(0.01sec)


[mysql>quit

Bye

[尹正杰到此一游:~yinzhengjie$



 

2>.查看宿主机的IP地址

 

3>.使用Guest虚拟机登录宿主机 


 

六.安装MySQL8.0.x的区别

1>.MySQL加密方式的选择(之前的安装步骤和上面MySQL5.7的安装方式基本雷同,我这里就省略了~)


2>.自定义root的密码:


3>.安装成功后,点击完成


4>.在MacOS到系统偏好设置进入到MySQL到管理界面


5>.查看MySQL的默认配置

 

6>.登陆MySQL服务器 


7>.将MySQL的安装路径手动添加到环境变量中


bogon:~yinzhengjie$vi~/.bash_profile

bogon:~yinzhengjie$

bogon:~yinzhengjie$source~/.bash_profile

bogon:~yinzhengjie$

bogon:~yinzhengjie$cat~/.bash_profile|grepPATH

#SettingPATHforPython3.6

PATH="/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}:/usr/local/mysql/bin"

exportPATH

bogon:~yinzhengjie$

bogon:~yinzhengjie$mysql-uroot-pyinzhengjie

mysql:[Warning]Usingapasswordonthecommandlineinterfacecanbeinsecure.

WelcometotheMySQLmonitor.Commandsendwith;or\g.

YourMySQLconnectionidis12

Serverversion:8.0.14MySQLCommunityServer-GPL


Copyright(c)2000,2019,Oracleand/oritsaffiliates.Allrightsreserved.


OracleisaregisteredtrademarkofOracleCorporationand/orits

affiliates.Othernamesmaybetrademarksoftheirrespective

owners.


Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement.


mysql>showdatabases;

+--------------------+

|Database|

+--------------------+

|information_schema|

|mysql|

|performance_schema|

|sys|

+--------------------+

4rowsinset(0.00sec)


mysql>


8>.创建MySQL到登陆用户


mysql>CREATEUSER'yinzhengjie'@'172.30.1.10%'IDENTIFIEDBY'yinzhengjie';

QueryOK,0rowsaffected(0.01sec)


mysql>

mysql>GRANTALLPRIVILEGESON*.*TO'yinzhengjie'@'172.30.1.10%'WITHGRANTOPTION;

QueryOK,0rowsaffected(0.00sec)


mysql>



[root@node110~]#hostname

node110.yinzhengjie.org.cn

[root@node110~]#

[root@node110~]#hostname-i

172.30.1.110

[root@node110~]#

[root@node110~]#mysql-h172.30.1.2-uyinzhengjie-pyinzhengjie

mysql:[Warning]Usingapasswordonthecommandlineinterfacecanbeinsecure.

ERROR1130(HY000):Host'172.30.1.110'isnotallowedtoconnecttothisMySQLserver

[root@node110~]#

[root@node110~]#


使用“node110.yinzhengjie.org.cn”节点登陆


[root@node105~]#hostname

node105.yinzhengjie.org.cn

[root@node105~]#

[root@node105~]#hostname-i

172.30.1.105

[root@node105~]#

[root@node105~]#mysql-h172.30.1.2-uyinzhengjie-pyinzhengjie

mysql:[Warning]Usingapasswordonthecommandlineinterfacecanbeinsecure.

WelcometotheMySQLmonitor.Commandsendwith;or\g.

YourMySQLconnectionidis14

Serverversion:8.0.14MySQLCommunityServer-GPL


Copyright(c)2000,2019,Oracleand/oritsaffiliates.Allrightsreserved.


OracleisaregisteredtrademarkofOracleCorporationand/orits

affiliates.Othernamesmaybetrademarksoftheirrespective

owners.


Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement.


mysql>showdatabases;

+--------------------+

|Database|

+--------------------+

|information_schema|

|mysql|

|performance_schema|

|sys|

+--------------------+

4rowsinset(0.00sec)


mysql>quit

Bye

[root@node105~]#


使用“node105.yinzhengjie.org.cn”节点登陆

 

转载于:https://www.cnblogs.com/yinzhengjie/p/10125609.html

曾为
3楼 · 2020-09-07 09:29


安装环境:OSX操作系统,Python2.7.3。

  MySQLdb其实包含在MySQL-python包中,因此无论下载还是在pip中search,都应该是搜寻MySQL-python。

  以下将说明MySQLdb两种常见的安装方式,下载安装或者pip安装MySQL-python。 

 下载MySQLdb

  在SourceForge可以下载MySQL-python-1.2.4b4.tar (或者https://pypi.python.org/pypi/MySQL-python/1.2.4b4),下载后解压,然后在终端Terminal中执行以下命令:


new-host-3:~iFantastic$cd/Users/iFantastic/Downloads/MySQL-python-1.2.4b4new-host-3:MySQL-python-1.2.4b4iFantastic$pythonsetup.pyinstall


 使用pip安装MySQLdb

  在终端中执行:


new-host-3:~iFantastic$pipinstallMySQL-python


  无论是在线安装还是下载安装,此时你可能会遇到第一个错误提示:


EnvironmentError:mysql_confignotfound


  建议使用pip安装,因为我从sourceforge下载的版本居然不如pip中的新。如果想要升级mysql-python版本,可以使用以下命令:


$easy_installMySQL-python--upgrade


  [注意]如果你没有按照下文解决安装中的错误提示,那么升级也会因为同样的错误原因而失败。

 解决mysql_confignotfound错误

  在默认方式安装Mac版MySql时,会在/usr/local/mysql/bin目录下生成mysql_config文件。

  因此下载安装时的解决办法为:在MySQL-python的安装包中找到site.cfg文件,打开它,找到以下内容:


#Thepathtomysql_config.

#Onlyusethisifmysql_configisnotonyourPATH,oryouhavesomeweird

#setupthatrequiresit.

#mysql_config=/usr/local/bin/mysql_config


  将最后一句句首井号去掉,并修改为:


mysql_config=/usr/local/mysql/bin/mysql_config


  然后执行:


$pythonsetup.pyinstall


  一般说来,此时安装可以完成,但仍有问题,下文会继续阐述。

  使用pip安装时没有办法修改site.cfg文件,因此可以通过修改OSX的系统环境变量来解决找不到mysql_config的错误。

  修改OSX环境变量:打开终端,在终端中使用vim打开“~/.bash_profile”,如果没有安装vim,那就显示隐藏文件用文本编辑器打开,具体操作这里就不复述了。在.bash_profile中添加以下内容:


PATH="/usr/local/mysql/bin:${PATH}"

exportPATH

exportDYLD_LIBRARY_PATH=/usr/local/mysql/lib/

exportVERSIONER_PYTHON_PREFER_64_BIT=no

exportVERSIONER_PYTHON_PREFER_32_BIT=yes


  其中 VERSIONER_PYTHON_PREFER_64_BIT和VERSIONER_PYTHON_PREFER_64_BIT根据自己安装的MySQL进行选择。

  另外再提供一个pip安装时找不到mysql_config的解决方法(我没有验证),在终端中输入以下命令:


$sudoln-s/usr/local/mysql/bin/*/usr/bin


  好了,到这里,MySQL-python包应该基本顺利安装。

 解决 Reason:imagenotfound错误

  安装完MySQL-python包后,让我们importMySQLdb,此时出现一个错误,错误最后一行写着Reason:imagenotfound。

  解决方法是在终端执行:


$sudoln-s/usr/local/mysql/lib/libmysqlclient.18.dylib/usr/lib/libmysqlclient.18.dylib

$sudoln-s/usr/local/mysql/lib/usr/local/mysql/lib/mysql

 


 

 

错误:

 

clang:error: unknown argument: '-mno-fused-madd'[-Wunused-command-line-argument-hard-error-in-future]

clang:note:thiswillbeaharderror(cannotbedowngradedtoawarning)inthefuture

经网上查证:http://www.tuicool.com/articles/zI7Vzu,貌似是macos的Xcode从5.1起给编译器规定对于未知参数传入视为error,我们需要使用ARCHFLAGS将该error降级为warning,因此最后的安装命令应该如下:

 

sudoARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-futurepythonsetup.pybuild


参考

http://www.cnblogs.com/macro-cheng/archive/2011/10/25/mysql-001.html

 

转载于:https://www.cnblogs.com/rxbook/p/7520044.html

流流流年
4楼 · 2020-09-09 10:07

python和mysql都是开源跨平台
所以理论上应该行为都一样

cc收获啦
5楼 · 2020-09-15 10:35

库装对了就没事

最简单的pythonGUI包,Linux,Windows,Mac要装的依赖库都不一样

另外就是写相对路径


相关问题推荐

  • 回答 3

    换行。比如,print hello\nworld效果就是helloworld\n就是一个换行符。\是转义的意思,'\n'是换行,'\t'是tab,'\\'是,\ 是在编写程序中句子太长百,人为换行后加上\但print出来是一整行。...

  • 回答 42

    十种常见排序算法一般分为以下几种:(1)非线性时间比较类排序:a. 交换类排序(快速排序、冒泡排序)b. 插入类排序(简单插入排序、希尔排序)c. 选择类排序(简单选择排序、堆排序)d. 归并排序(二路归并排序、多路归并排序)(2)线性时间非比较类排序:...

  • 回答 70
    已采纳

    前景很好,中国正在产业升级,工业机器人和人工智能方面都会是强烈的热点,而且正好是在3~5年以后的时间。难度,肯定高,要求你有创新的思维能力,高数中的微积分、数列等等必须得非常好,软件编程(基础的应用最广泛的语言:C/C++)必须得很好,微电子(数字电...

  • 回答 28

    迭代器与生成器的区别:(1)生成器:生成器本质上就是一个函数,它记住了上一次返回时在函数体中的位置。对生成器函数的第二次(或第n次)调用,跳转到函数上一次挂起的位置。而且记录了程序执行的上下文。生成器不仅记住了它的数据状态,生成器还记住了程序...

  • 回答 9

    python中title( )属于python中字符串函数,返回’标题化‘的字符串,就是单词的开头为大写,其余为小写

  • 回答 6

    第一种解释:代码中的cnt是count的简称,一种电脑计算机内部的数学函数的名字,在Excel办公软件中计算参数列表中的数字项的个数;在数据库( sq| server或者access )中可以用来统计符合条件的数据条数。函数COUNT在计数时,将把数值型的数字计算进去;但是...

  • 回答 1

    head是方法,所以需要取小括号,即dataset.head()显示的则是前5行。data[:, :-1]和data[:, -1]。另外,如果想通过位置取数据,请使用iloc,即dataset.iloc[:, :-1]和dataset.iloc[:, -1],前者表示的是取所有行,但不包括最后一列的数据,结果是个DataFrame。...

  • Python入门简单吗2021-09-23 13:21
    回答 45

    挺简单的,其实课程内容没有我们想象的那么难、像我之前同学,完全零基础,培训了半年,直接出来就工作了,人家还在北京大公司上班,一个月15k,实力老厉害了

  • 回答 4

    Python针对众多的类型,提供了众多的内建函数来处理(内建是相对于导入import来说的,后面学习到包package时,将会介绍),这些内建函数功用在于其往往可对多种类型对象进行类似的操作,即多种类型对象的共有的操作;如果某种操作只对特殊的某一类对象可行,Pyt...

  • 回答 8

     相当于 ... 这里不是注释

  • 回答 4

    还有FIXME

  • 回答 3

    python的两个库:xlrd和xlutils。 xlrd打开excel,但是打开的excel并不能直接写入数据,需要用xlutils主要是复制一份出来,实现后续的写入功能。

  • 回答 8

    单行注释:Python中的单行注释一般是以#开头的,#右边的文字都会被当做解释说明的内容,不会被当做执行的程序。为了保证代码的可读性,一般会在#后面加一两个空格然后在编写解释内容。示例:#  单行注释print(hello world)注释可以放在代码上面也可以放在代...

  • 回答 2

    主要是按行读取,然后就是写出判断逻辑来勘测行是否为注视行,空行,编码行其他的:import linecachefile=open('3_2.txt','r')linecount=len(file.readlines())linecache.getline('3_2.txt',linecount)这样做的过程中发现一个问题,...

  • 回答 4

    或许是里面有没被注释的代码

  • 回答 26

    自学的话要看个人情况,可以先在B站找一下视频看一下

没有解决我的问题,去提问