MyCli是一款命令行模式下实现MySQL语法高亮和自动补齐的工具
最近百度安装方法时发现前几页基于Python2.7的安装方法均已失效,所以写一篇新的分享出来供大家参考,理论上复制粘贴可以100%成功,遇到问题可以留言,解决后我会在"已知问题"中更新解决方法
环境
系统版本:CentOS Linux release 7.8.2003
MySQL版本:mysql 8.0 || 5.7
安装
##安装依赖包
[root@mysql8 ~]yum install -y epel-release zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel gcc
make python-pip python-devel
##下载Python3.8安装包
[root@mysql8 ~]wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0b3.tgz
#解压安装包
[root@mysql8 ~]tar -xvf Python-3.8.0b3.tgz
#进入Python目录,指定安装目录并编译安装
[root@mysql8 ~]cd Python-3.8.0b3
[root@mysql8 Python-3.8.0b3]./configure --prefix=/app/python/python3.8
[root@mysql8 Python-3.8.0b3]make && make install
#创建python3.8和pip3.8的软连接
[root@mysql8 ~]ln -s /app/python/python3.8/bin/python3.8 /usr/bin/python3.8
[root@mysql8 ~]ln -s /app/python/python3.8/bin/pip3.8 /usr/bin/pip3.8
#升级pip包管理器版本至最新版,安装Mycli
[root@mysql8 ~]pip3.8 install --upgrade pip
[root@mysql8 ~]pip3.8 install --ignore-installed mycli
#Mycli所在目录
[root@mysql8 ~]# cd /app/python/python3.8/bin/
#追加环境变量,注意要使用单引号
[root@mysql8 bin]echo -e 'PATH=$PATH:/app/python/python3.8/bin/\nexport PATH' >> /etc/profile
#生效环境变量
[root@mysql8 bin]source /etc/profile
#启动方法
[root@mysql8 bin] ./mycli -u root
Password:
##至此安装全部完成
已知问题
启动Mycli时提示:
(1130, “::1’ is not allowed to connect to this MySQL server”)
#进入MySQL
root@localhost : mysql 09:52:33> use mysql
Database changed
##为root添加host权限
root@localhost : mysql 09:52:34> update user set host='%' where user='root';
Query OK, 1 row affected (0.00 sec)
#确认将root添加至权限列表
root@localhost : mysql 09:52:36> select host,user from user;
+-----------+------------------+
| host | user |
+-----------+------------------+
| % | root |
| localhost | mysql.infoschema |
| localhost | mysql.session |
| localhost | mysql.sys |
+-----------+------------------+
4 rows in set (0.00 sec)
#刷新权限并退出
root@localhost : (none) 09:53:14> flush privileges;
Query OK, 0 rows affected (0.00 sec)
root@localhost : (none) 09:53:34> exit
Mycli运行效果