您的位置:首页 > 运维架构 > Linux

linux MySQL相关问题

2015-08-04 20:51 495 查看
ubuntu下出现的2002, "Can't connect to local MySQL server through socket'/var/run/mysqld/mysqld.sock' (2)解决方法:

 

    我试了下网上的所有方法,都不行,我同学遇到这种问题,重装了mysql,然后就好啦,我也试了试这个方法,将原来的mysql删除,重装mysql,按如下步骤,只需2分钟即可搞定:

 1、删除 mysql

    1sudo apt-get autoremove --purge mysql-server-5.0

    2sudo apt-get remove mysql-server

    3 sudo apt-get autoremove mysql-server

    4 sudo apt-get remove mysql-common (非常重要)

上面的其实有一些是多余的,建议还是按照顺序执行一遍

 

清理残留数据:

dpkg -l |grep ^rc|awk '{print $2}' |sudoxargs dpkg -P

 

2、安装 mysql

   1 sudo apt-get install mysql-server

   2 sudo apt-get install mysql-client

 

安装MySQLdb模块:

3 sudo apt-get install python-mysqldb(安装python-mysqldb 是将python和mysql连接起来)

 

如果在服务器上需要运行MYSQLDB,sudo apt-get install python-mysqldb,提示

 

E: Sub-process /usr/bin/dpkg returned anerror code (1)

此时可以这样解决:

cd /var/lib/dpkg

sudo mv info info.bak

sudo mkdir info

重新安装,在此为:

sudo apt-get --reinstall installpython-mysqldb

 

一旦安装完成,MySQL 服务器应该自动启动。您可以在终端提示符后运行以下命令来检查 MySQL 服务器是否正在运行:

 

1 sudo netstat -tap | grep mysql

 

 

当您运行该命令时,您可以看到类似下面的行:

tcp 0 0 localhost.localdomain:mysql *:*LISTEN -

 

如果服务器不能正常运行,您可以通过下列命令启动它(要使用sudo管理员权限执行):

 

1 sudo /etc/init.d/mysql restart

 

启动mysql时,如果遇到以下问题:

 

$ sudo service mysql restart

stop: Unknown instance:

start: Job failed to start

 

查看"/var/log/mysql/error.log"文件:

 

1. 如果出现:

120415 23:01:09 [Note] Plugin 'InnoDB' isdisabled.

120415 23:01:09 [Note] Plugin 'FEDERATED'is disabled.

120415 23:01:09 [ERROR] Unknown/unsupportedstorage engine: InnoDB

120415 23:01:09 [ERROR] Aborting

 

120415 23:01:09 [Note]
97e7
/usr/sbin/mysqld:Shutdown complete

 

则 在my.cnf中注释掉  "skip_innodb"  所在的行

 

1. 如果出现:端口已占用

 

则 通过 lsof -i:3360 端口查看mysql的pid,执行 kill -9 pid,关闭进程,重新启动mysql。 sudo sevice mysql startup

 

下面进行简单的配置
安装完成后通过修改/etc/mysql/my.cnf(此文件为mysql的配置文件)。将文件中的binding-address=127.0.0.1注释掉。其它配置根据需要更改。
Hadoop@master:~$sudo vi /etc/mysql/my.cnf

# Instead of skip-networking the default is now to listen only on

# localhost which is more compatible and is not less secure.

#bind-address = 127.0.0.1
 

23、进入mysql

 

$mysql -uroot -p

Enter password :管理员密码

mysql>
执行以下命令,配置mysql远程访问:
mysql> grant all privileges on *.* to root@'%' identified by"root";

Query OK, 0 rows affected (0.01 sec)
重启msyql服务即可远程访问
hadoop@master:~$ sudo service mysql restart 

mysql stop/waiting 

mysql start/running, process 32359
到此安装和配置完成。
 

配置 MySQL 的管理员密码:

$ sudo mysqladmin -u root password newpassword

 

Ubuntu安装mysql客户端和管理可视化工具
$sudo
apt-get
install
mysql-workbench


 


 
Mysql允许远程连接
一、连接远程数据库: 1、显示密码 如:MySQL 连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456” C:/>mysql -h 192.168.5.116 -P 3306 -u root -p123456 2、隐藏密码如:MySQL 连接本地数据库,用户名为“root”, C:/>mysql -h localhost -u root -p Enter
password: 二、配置mysql允许远程链接 默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录。本文提供了二种方法设置mysql可以通过远程主机进行连接。一、改表法 在localhost登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改称"%" 例如: #mysql -u root -p Enterpassword: …… mysql>    mysql>update user set host = '%' whereuser
= 'root';    mysql>select host,user from user;
二、授权法 例如: 你想myuser使用mypassword(密码)从任何主机连接到mysql服务器的话。 mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY'mypassword' WITH GRANT OPTION; 如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
  mysql>GRANT ALL PRIVILEGES ON *.* TO'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;mysql>FLUSH PRIVILEGES  使修改生效,就可以了
常见问题:
1、在采用法二授权法之后,无法在本地登录mysql(如:#mysql -u root -p -h 192.168.5.116 Enter password: ERROR 1045(28000): Access denied for user 'root'@'loadb116' (using password: YES) 上例中loadb116是主机名.
解决方法:1、这时可以使用:mysql -u root -p 登录,进入到mysql后。 mysql> grant all privileges on*.* to 'root'@'loadb116' identified by '123456' with grant option; Query OK, 0rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected(0.00 sec) 2、在本地使用ip地址登录 #mysql
-u root -p -h 192.168.5.116 Enter password: Welcome to the MySQL monitor.Commands end with ; or /g. Your MySQL connection id is 60 Server version:5.1.45 MySQL Community Server (GPL) Type 'help;' or '/h' for help. Type '/c' toclear the buffer. mysql>
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ubuntu mysql