centos,linux下django 链接mysql提示mysql.sock无法打开问题

首先,如果你不是一个架构师,那么你得知道什么是才能往下看

centos

mysqld

django

mysql-python

==============================================================================================================

提示: can't open ....                  /var/lib/mysql/mysql.sock 

然后我会告诉你

我在django的启动setting的Databased项里添加OPTIONS

(本来是没有option的,同样的一份代码,配置,我用MAC笔记本做服务器也是不需要option的,但是现在部署到linux上)

改写,添加option项:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'star_ums',                      # Or path to database file if using sqlite3.
        'USER': 'root',                      # Not used with sqlite3.
        'PASSWORD': '',                  # Not used with sqlite3.
        'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
        'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
        'OPTIONS':{
        "unix_socket":"/tmp/mysql.sock"
        },
    }


问题解决!Fuxx...............!!!



不用Ctrl + Alt + F12切命令行了

直接用centos终端.............(突然领悟到所谓的架构师,TMD就是linux系统软件安装师,起码是国内是这样的,名称什么的乱起!)

前阵子比较来比较去,选了CentOS作Linux系统,刚装到虚拟机里面,发现默认的用户无法开启系统权限。终端中输入sudo后提示“XXX is not  in the sudoers file. This incident will be reported.” 上网搜搜,找到了解决办法: 用sudo时提示"xxx is not in the sudoers file. This incident will be reported.其中XXX是你的用户名,也就是你的用户名没有权限使用 sudo,我们只要修改一下/etc/sudoers文件就行了。下面是修改方法:
 
1)进入超级用户模式。也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式。(当然,你也可以直接用root 用,也就是按alt+ctrl+F2切换到命令行) 

(后面就没有后面了,反正你都 su 了,还用什么设sudo用户???)


草泥马。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。!!!!!


最终结果:




最后:我还是不得不设sudoers,因为好像没办法在桌面添加快捷方式

具体做法:(即使不懂VI也可以按下面步骤做)

但真的要小心,博主试过VI乱按,导致ROOT用户权限全不见了,所有文件无法查看,Linux慎用

2)添加文件的写权限。也就是输入命令"chmod u+w /etc/sudoers"。 
3)编辑/etc/sudoers文件。也就是输入命令"vim /etc/sudoers",输入"i"进入编辑模式,找到这一 行:"root ALL=(ALL) ALL"在起下面添加"xxx ALL=(ALL) ALL"(这里的xxx是你的用户名),然后保存(就是先按一 下Esc键,然后输入":wq")退出。 
4)撤销文件的写权限。也就是输入命令"chmod u-w /etc/sudoers"



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
这个问题通常是由于MySQL服务没有正确启动导致的。你可以按照以下步骤来解决这个问题: 1. 检查MySQL服务是否已经启动。你可以使用以下命令来检查: ``` systemctl status mysqld ``` 如果MySQL服务已经启动,你应该会看到类似以下的输出: ``` ● mysqld.service - MySQL Server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2021-08-10 09:45:15 EDT; 19h ago ``` 如果MySQL服务没有启动,你可以使用以下命令来启动MySQL服务: ``` systemctl start mysqld ``` 2. 如果MySQL服务已经启动,那么你需要检查MySQL的配置文件,确认MySQLsocket文件路径是否正确。你可以使用以下命令来查找MySQL的配置文件: ``` find / -name my.cnf ``` 在找到的my.cnf文件中,确认以下配置是否正确: ``` [mysqld] socket=/tmp/mysql.sock ``` 如果socket配置不正确,你需要修改my.cnf文件,将socket路径修改为正确的路径。 3. 如果MySQL服务已经启动,并且socket路径配置正确,但是还是出现了socket '/tmp/mysql.sock错误,那么你可以尝试重启MySQL服务。你可以使用以下命令来重启MySQL服务: ``` systemctl restart mysqld ``` 重启MySQL服务后,再次检查MySQL服务状态,确认MySQL服务已经正常启动。 希望以上步骤可以解决你的问题。如果问题仍然存在,请提供更多的错误信息,以便我们更好的帮助你解决问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

avi9111

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值