linux子系统安装MySQL遇到的一些问题
解决root账户登录mysql只能sudo登录的问题
解决方法:
$ sudo vim /etc/mysql/my.cnf
添加:
[mysqld]
skip-grant-tables
保存,退出。
然后执行以下两条命令来重启mysql服务:
$ sudo service mysql stop
$ sudo service mysql start
或者直接执行重启服务的命令:
$ sudo service mysql restart
重启完以后,上面对配置的修改才正式生效,这时候再登录就不用加sudo了。
启动数据库报错Plugin ‘auth_socket’ is not loaded解决办法
解决方法:
重启服务
$ sudo service mysql restart
安装mysql后设置初始密码:
$ /etc/init.d/mysql stop
$ sudo mysqld_safe --user=mysql --skip-grant-tables --skip-networking & # 跳过检查
$ mysql -u root -p # 使用空密码进入数据库
mysql> update mysql.user set authentication_string=password(‘123456’) where user=‘root’; # 调用mysql的password函数。
mysql> flush privileges;
mysql> quit
其他
/var/run/mysqld 目录每次重启后都需要手动去创建并赋权mysql用户,是因为/var/run/目录下建立文件夹是在内存中,故每次重启后内存被清空导致/var/run/mysqld 也被清除,从而导致无法启动mysql
$ mkdir /var/run/mysqld
$ sudo chown mysql:mysql /var/run/mysqld