弄这东西用了两天,坑爹啊,不过终于弄好了,还有发现的一些不错的,一块分享给大家,以免以后有人再像我这样浪费时间
一:
删除 mysql
sudo apt-get autoremove --purge mysql-server-5.7(注意这里是自己之前安装的mysql的对应版本)
sudo apt-get remove mysql-server
sudo apt-get autoremove mysql-server
sudo apt-get remove mysql-common //这个很重要
清理残留数据
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
二:
安装mysql
1.安装
sudo apt-get install mysql-server(此处会提示设置密码)
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
如果中途有问题就执行以下 apt-get update
2.检查是否安装成功
sudo netstat -tap | grep mysql
(注意,本机没有设置远程连接,如果需要的话自行百度一下)
到此,数据库已经安装好了
三:支持中文编码(采用的是utf8)
(注:由于不能直接复制粘贴图片,所以都采用文字描述)
先登录数据库,然后输入show variables like 'character_set%';
查看此时的编码格式
接下来要修改两个位置
1.修改/etc/mysql/mysql.conf.d/my-default.cnf
wuxiushu@root:~$ sudo su
root@root:/home/wuxiushu# cd /etc/mysql
root@root:/etc/mysql# ls
conf.d debian-start my.cnf.fallback mysql.conf.d
debian.cnf my.cnf mysql.cnf
root@root:/etc/mysql# cd mysql.conf.d
root@root:/etc/mysql/mysql.conf.d# ls
mysqld.cnf mysqld_safe_syslog.cnf
root@root:/etc/mysql/mysql.conf.d# gedit mysqld.cnf
在[mysqld]下面添加
[mysqld]
#
# * Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
此位置下面添加下面三句
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
保存退出
2.修改/usr/share/mysql/my-default.cnf
wuxiushu@root:~$ sudo su
root@root:/home/wuxiushu# cd /usr/share/mysql
root@root:/usr/share/mysql# ls
bulgarian magic
charsets my-default.cnf
czech mysqld_multi.server
danish mysql-log-rotate
debian_create_root_user.sql mysql_security_commands.sql
dictionary.txt mysql_sys_schema.sql
docs mysql-systemd-start
dutch mysql_system_tables_data.sql
echo_stderr mysql_system_tables.sql
english mysql_test_data_timezone.sql
errmsg-utf8.txt norwegian
estonian norwegian-ny
fill_help_tables.sql polish
french portuguese
german romanian
greek russian
hungarian serbian
innodb_memcached_config.sql slovak
install_rewriter.sql spanish
italian swedish
japanese ukrainian
korean uninstall_rewriter.sql
root@root:/usr/share/mysql# gedit my-default.cnf
[mysqld]下面修改为
[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
character-set-server=utf8
3.重启mysql
sudo service mysql restart
启动mysql
mysql -u root -p
之后再次输入show variables like 'character_set%';
运行结果如下
mysql> show variables like 'character_set%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)