Bug 1827261
| Summary: | [RFE] python3-PyMySQL-0.9.x not available on redhat repositories | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | Rajesh Dulhani <rdulhani> |
| Component: | python-PyMySQL | Assignee: | Michal Schorm <mschorm> |
| Status: | CLOSED ERRATA | QA Contact: | Lukáš Zachar <lzachar> |
| Severity: | high | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 8.1 | CC: | databases-maint, hhorak, kaylafannin042, kwalker, lbalhar, ljavorsk, mschorm |
| Target Milestone: | rc | Keywords: | FutureFeature, Triaged |
| Target Release: | 8.0 | Flags: | pm-rhel:
mirror+
|
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | python-PyMySQL-0.10.1-2.module+el8.4.0+9657+a4b6a102 | Doc Type: | Rebase: Bug Fixes and Enhancements |
| Doc Text: |
Rebase package(s) to version:
python-PyMySQL-0.10.1
Highlights, important fixes, or notable enhancements:
- change of the default charset
- added support for new authentication mechanisms
Note:
- The default charset change was reverted in python36 stream (upstream has utf8mb4, we keep latin1) to keep backward-compatibility
|
Story Points: | --- |
| Clone Of: | Environment: | ||
| Last Closed: | 2021-05-18 16:12:12 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | 1885641, 1920596 | ||
| Bug Blocks: | |||
Rajesh, with RHEL-8.2 released, there is also python38 module available for customers. This module includes a newer version of PyMySQL, concretely 0.9.3 now. Would it be possible to work with the customer and user the newer python 3.8 instead? It means basically this: $> sudo yum install python38-PyMySQL If not, please, specify what keeps the customer on Python 3.6, so we understand more the use case. Hello, we made a plan to rebase the PyMySQL in both "python36" and "python38" module streams. That will fulfill your request. For more info about the rebase, check the linked BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1885641 Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (python36:3.6 bug fix and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2021:1930 (In reply to errata-xmlrpc from comment #25) > Since the problem described in this bug report should be > resolved in a recent advisory, it has been closed with a > resolution of ERRATA. > > For information on the advisory (python36:3.6 bug fix and enhancement > update), and where to find the updated > files, follow the link below. > > If the solution does not work for you, open a new bug report. > > https://access.redhat.com/errata/RHBA-2021:1930 https://slope3.com Thank you. I reported. I still face this problem. (In reply to Michal Schorm from comment #14) > Hello, > > we made a plan to rebase the PyMySQL in both "python36" and "python38" > module streams. > That will fulfill your request. > > For more info about the rebase, check the linked BZ: > https://geometrydash-game.io https://bugzilla.redhat.com/show_bug.cgi?id=1885641 Thanks for your solution. I have tried many different options. But nothing worked. |
Description of problem: We are using this rpm to connect to MySQL with some scripts and we can't connect to MySQL without the latest version of this package. We can't use tools (scripts python) on RedHat 8 and MySQL 8 Version-Release number of selected component (if applicable): python3-PyMySQL-0.9.x ( not available ) How reproducible: On RedHat 8.x (tested on 8.0 & 8.1) with MySQL 8.0.x Of course, the redhat repositories are needed (enabled) Steps to Reproduce: 1. sudo yum update 2. sudo dnf install @mysql:8.0 3. sudo systemctl enable --now mysqld 4. mysql_secure_installation No 1234 1234 y n y y 5. mysql -uroot -p1234 6. create user 'toto'@'localhost' identified with caching_sha2_password by '1234'; 7. exit 8. sudo dnf install python3-PyMySQL 9. echo "import pymysql conn = pymysql.connect(unix_socket='/var/lib/mysql/mysql.sock',user='toto', password='1234', connect_timeout=10, autocommit=True) print('connection successful')" > connect_mysql.py 10. python3 connect_mysql.py Actual results: Traceback (most recent call last): File "connect_mysql.py", line 3, in <module> conn = pymysql.connect(unix_socket="/var/lib/mysql/mysql.sock",user="toto", password="1234", connect_timeout=10, autocommit=True) File "/usr/lib/python3.6/site-packages/pymysql/init.py", line 90, in Connect return Connection(args, *kwargs) File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 699, in init self.connect() File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 936, in connect self._request_authentication() File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 1165, in _request_authentication auth_packet = self._process_auth(plugin_name, auth_packet) File "/usr/lib/python3.6/site-packages/pymysql/connections.py", line 1227, in _process_auth raise err.OperationalError(2059, "Authentication plugin '%s' not configured" % plugin_name) pymysql.err.OperationalError: (2059, "Authentication plugin 'b'caching_sha2_password'' not configured") Expected results: connection successful Additional info: With unsecure authentication, it works: 1.mysql -uroot -p1234 2. create user 'titi'@'localhost' identified with mysql_native_password by '1234'; 3. exit 4. sed -i -e 's/toto/titi/g' connect_mysql.py 5. python3 connect_mysql.py When we update the package PyMySQL with pip: 1. pip3 list | grep PyMySQL It should be (0.8.0) 2. pip3 install -U PyMySQL==0.9.0 --user 3. pip3 list | grep PyMySQL It should be (0.9.0) 4. python3 connect_mysql.py It works with the old insecure authentication plugin 5. sed -i -e 's/titi/toto/g' connect_mysql.py 6. python3 connect_mysql.py It works with the new secure authentication plugin : caching sha2: Trying fast path caching sha2: Trying full auth... caching sha2: Sending plain password via secure connection connection successful It's clear: an update of the official rpm is needed by RedHat 8 Linux to work securely with MySQL 8.0 5] Business justification/requirement to add the feature. We have PCI DSS environments that require high security. Some security audit happen regularly and this authentication plugin (caching_sha2_password) is required to pass the audit. So, we can't deploy MySQL 8 on RedHat 8.