ایس کیو ایل کے استفسار کے نتیجے میں برآمدی دشواری حل کرنا: غلطی 1 (HY000): فائل بنانا / لکھ نہیں سکتا

Mysql Query Result Export Problem Solving



اصل: https://blog.csdn.net/duxu24/article/details/53669697

ٹاسک: ایس کیو ایل ڈیٹا سے ڈیٹا کو مقامی میں ایکسپورٹ کریں۔
غلطی کا پیغام: غلطی 1 (HY000): فائل '/home/spark/data.csv' پر تخلیق / لکھ نہیں سکتا (ایرکوڈ: 2 - ایسی فائل یا ڈائرکٹری نہیں ہے)
وجہ: اوبنٹو ورژن کی وجہ سے ، بنیادی طور پر کچھ ورژن MySQL برآمد فائل کو MySQL کی ڈیٹا بیس فائل (ڈیٹاڈیر) کے علاوہ کسی اور راستے تک محدود کرتے ہیں۔ یہ ، بطور ڈیفالٹ ، آپ صرف مخصوص ڈیٹا بیس فائل میں برآمد کرسکتے ہیں۔
مخصوص ڈیٹا بیس فائل پاتھ کمانڈ دیکھیں:



# داخل ایس کیو ایل



mysql> show variables like 'datadir' +---------------+-----------------+ | Variable_name | Value | +---------------+-----------------+ | datadir | /var/lib/mysql/ | +---------------+-----------------+ 1 row in set (0.00 sec)


چیک کریں کہ آیا آپ کے اوبنٹو ورژن میں مندرجہ بالا لازمی پابندیاں ہیں:



$ sudo aa-status apparmor module is loaded. 23 profiles are loaded. 23 profiles are in enforce mode. /sbin/dhclient /usr/bin/evince /usr/bin/evince-previewer /usr/bin/evince-previewer//sanitized_helper /usr/bin/evince-thumbnailer /usr/bin/evince-thumbnailer//sanitized_helper /usr/bin/evince//sanitized_helper /usr/bin/ubuntu-core-launcher /usr/lib/NetworkManager/nm-dhcp-client.action /usr/lib/NetworkManager/nm-dhcp-helper /usr/lib/connman/scripts/dhclient-script /usr/lib/cups/backend/cups-pdf /usr/lib/telepathy/mission-control-5 /usr/lib/telepathy/telepathy-* /usr/lib/telepathy/telepathy-*//pxgsettings /usr/lib/telepathy/telepathy-*//sanitized_helper /usr/lib/telepathy/telepathy-ofono /usr/sbin/cups-browsed /usr/sbin/cupsd /usr/sbin/cupsd//third_party /usr/sbin/ippusbxd /usr/sbin/mysqld #If this option is present, there is a default mandatory limit for this version. /usr/sbin/tcpdump 0 profiles are in complain mode. 8 processes have profiles defined. 8 processes are in enforce mode. /sbin/dhclient (948) /usr/lib/telepathy/mission-control-5 (1633) /usr/sbin/cups-browsed (845) /usr/sbin/cupsd (4588) /usr/sbin/cupsd (4590) /usr/sbin/cupsd (4591) /usr/sbin/cupsd (4592) /usr/sbin/mysqld (916) 0 processes are in complain mode. 0 processes are unconfined but have a profile defined.


حل: فائل /etc/apparmor.d/usr.sbin.mysqld میں ترمیم کریں

# $ sudo vim /etc/apparmor.d/usr.sbin.mysqld #Add the following to /usr/sbin/mysqld {} /home/spark/ r, /home/spark/** rwk, # MySQL, reload the file $ sudo /etc/init.d/apparmor reload [ ok ] Reloading apparmor configuration (via systemctl): apparmor.service.

یقینا، ، میرا حل اصل بلاگر کے مقابلے میں آسان اور غیر مہذب ہے۔ میں اپنی فائلوں کو براہ راست ایس کیو ایل ڈیٹا بیس فائل (ڈیٹاڈیر) میں ایکسپورٹ کرتا ہوں ، کیونکہ استعمال کے لئے ڈیٹا بیس آن لائن ہے ، اسے دوبارہ اسٹارٹ کرنا آسان نہیں ہے ، اور یہ ڈیٹاڈیئر میں ایکسپورٹ کی جاتی ہے۔ اس کے تحت کوئی اثر نہیں پڑتا ہے۔