安装mysql
sudo apt-get install mysql-server mysql-client
有时会提示下列异常
解决方法:删除所有apt程序
使用ps -A | grep apt查看,sudo kill -9 processnumber删除程序
再安装即可
中间会提示设置mysql的root用户的密码
测试是否安装成功
sudo netstat -tap | grep mysql
登录 mysql -uroot -p
检查MySQL服务器占用端口 netstat -nlt|grep 3306
检查MySQL服务器系统进程 ps -aux|grep mysql
查看数据库的字符集编码 show variables like ‘%char%’;
让MySQL服务器被远程访问
打开mysql配置文件
注意:不同 mysql 版本此配置文件位置和名字可能不同
sudo vim /etc/mysql/my.cnf
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
有时找不到文件,可以先重启mysql服务再找
#找到将bind-address = 127.0.0.1注销
#bind-address = 127.0.0.1
在[mysqld]下添加
skip-name-resolve --> 主要是加上这句就快了
修改后,重启MySQL服务器
sudo /etc/init.d/mysql restart
重新登录mysql -uroot -p
设置远程连接root账户,来源ip为任意ip(%),密码为123456
mysql>GRANT ALL PRIVILEGES ON . TO’root’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;
mysql>flush privileges;
检查MySQL服务器占用端口
netstat -nlt|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
若远程使用root连接客户端失败的话
则登录mysql -uroot -p
查询mysql所有用户
mysql>select user,host from mysql.user;
ps:MYSQL5.7版本sql_mode=only_full_group_by问题
先用select @@sql_mode;查询,复制这个值,在mysqld.cnf中添加配置项(把查询到的值删掉only_full_group_by这个选项,其他的都复制过去):
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
修改后,重启MySQL服务器
sudo /etc/init.d/mysql restart
mysql.serviceJob for mysql.service failed because the control process问题
已5.7为例,先卸载所有的安装
sudo apt-get autoremove --purge mysql-server-5.7
然后重装
sudo apt-get install mysql-server mysql-client
安装完后修改my.cnf文件信息
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf