ModuleNotFoundError を修正:Python に MySQLdb モジュールがありません
MySQL は、Python で使用するのに最も効率的なものの 1 つです。 Python モジュール「mysqldb」を使用すると、Python を MySQL に接続できます。モジュールがシステムにインストールされていない場合は、「'mysqldb' という名前のモジュールがありません」というエラーが発生します。
ModuleNotFoundError:MySQLdb という名前のモジュールがありません修正この投稿では、考えられる原因と、「mysqldb という名前のモジュールがありません」というエラーを修正するための解決策について説明します。
このエラーが発生するのはなぜですか?
Python モジュールは、単一のパッケージまたは複数のパッケージに依存します。 「mysqldb」に関連するパッケージの 1 つがインストールされていないときにモジュールをインポートしようとすると、「mysqldb という名前のモジュールがありません」というエラーが発生します。
ここのスニペットは、インポートしようとしているがエラーが発生したことを示しています。
モデルが見つかりませんエラー解決策:「MySQLdb」 をインストールする
「MySQLdb」モジュールは、Python ベースのマネージャーである PIP を通じて利用できます。 PIP がシステムにインストールされていることを確認してください。完全なソリューションは次の手順で示されます。
ステップ 1:PIP をインストールする
PIP は、次の一連のコマンドを使用して Linux にインストールできます。
$ sudo apt install python3-pip #For Debian and Ubuntu-Based Distributions $ sudo yum install python3-pip #For CentOS7/RHEL $ sudo dnf install python3-pip #For Fedora/CentOS8 $ sudo pacman -S python3-pip #For Arch-Based Distributionspython3-pipのインストール
Python2 に PIP をインストールするには、パッケージ名「python-pip」を使用する必要があります。
ステップ 2:「mysqlclient」 パッケージをインストールする
「MySQLdb」モジュールは、PIP の異なるパッケージをインポートする前にインストールする必要がある 2 つのパッケージに関連付けられています。最初のパッケージは「mysqlclient」で、Python が MySQL に接続できるようにします。
このパッケージがないことが、モジュールをインポートできない主な理由です。 「mysqlclient」パッケージは、次のように Linux にインストールできます。
$ pip3 install mysqlclientMySQLパッケージをインストールする
「mysqlclient」のインストール中にエラーが発生する場合があります。
がないためです。Python の開発パッケージを使用して、システムにパッケージ「mysqlclient」を埋め込みます。このパッケージのセットは、次のコマンドを使用してインストールできます。
$ sudo apt install python3-dev default-libmysqlclient-dev build-essential $ sudo yum install python3-dev default-libmysqlclient-dev build-essential $ sudo dnf install python3-dev default-libmysqlclient-dev build-essential
注: 「apt」、「yum」、「dnf」は、Debian/Ubuntu、CentOS/RHEL、および Fedora ベースのディストリビューションを指します。
MySQL ビルド必需品のインストール「mysqlclient」をインストールした後、モジュールをインポートしてみます。エラーが残る場合は、次に進みます。
ステップ 3:「mysql-connector-python」 をインストールする
このパッケージにより、Python が MySQL データベースに接続できるようになります。次の PIP ベースのコマンドを使用してインストールできます。
$ sudo pip3 install mysql-connector-pythonPythonをMySQL DBに接続する
Python2 に PIP を使用している場合は、パッケージ マネージャー名「pip3」を「pip2」に置き換えます。
ステップ 4:解決策を確認する
次に、完全な名前を使用してモジュールをインポートします。
>>> import MySQLdbMySQLdbをインポートする
スクリーンショットは、モジュールが Python 環境にインポートされていることを示しています。
このモジュールのインポートに必要なパッケージがないときにユーザーがモジュールをインポートしようとすると、「mysqldb という名前のモジュールがありません」というエラーが発生します。このエラーは、システムにパッケージ「mysqlclient」をインストールすることで修正できます。ただし、まだ修正されていない場合は、PIP を使用して「mysql-connector-python」パッケージをインストールします。この投稿では、Linux 上の「MySQLdb」モジュール エラーの理由と修正方法をリストしました。
著者について
ムハマド・ズビャン
Muhammad Zubyan は、7 年以上の豊富な経験を持つ認定 Google IT サポート プロフェッショナルです。彼は 1,500 台以上のコンピュータに取り組み、Windows 関連の問題やエラーの複雑な根本原因を検出してトラブルシューティングできる貴重な洞察を獲得しました。彼は上級編集者として Appuals を管理することに加えて、現在、ゲーマーとカジュアル ユーザーの両方に同様に対応する独自のゲーム最適化プログラムを開発しています。
-
修正:VMの初期化中にエラーが発生し、オブジェクトヒープ用に十分なスペースを予約できませんでした
最近のJavaアプレットは一般的なWebテクノロジーではありませんが、Java仮想マシンをLinuxサーバーに直接デプロイする理由は無数にあります。 Linux javaコマンドをディスクリートハードウェア上または独自のVM内で完全に実行しようとすると、「VMの初期化中にエラーが発生し、オブジェクトヒープ用の十分なスペースを予約できませんでした」というメッセージが表示される場合があります。 コマンドを実行するのに十分なRAMがある可能性が高いため、これはおそらくかなり奇妙に見えますが、これは主に、物理メモリページと仮想メモリページが使用される方法の特定の癖によるものです。比較的大きなサイズを
-
Linux bc を 16 進数計算機として使用する:クイック コマンドライン チュートリアル
Linux などのさまざまな Unix 系オペレーティング システム実装や、GNU スイートを備えたほぼすべてのものには、基本的な電卓言語 bc が含まれています。その構文は C プログラミング言語に非常に似ています。コマンド ラインから直接 16 進数の計算機として使用できるため、スマートフォンに 16 進数または 8 進数のアプリを再度ダウンロードする必要はありません。 これは開発者や宿題をしている人にとって素晴らしいニュースです。ただし、これを行うにはターミナルを開く必要があります。 Ctrl、Alt、T を押し続けるか、Ubuntu Unity Dash で「ターミナル」という単語を