Wondering what’s been happening with the offline problems and loss of some posts? Here’s DU’s sys admin, Marc Perkel, to explain it all.

And for those who keep popping off in the comments to posts about Windows or Mac, tell us again why Linux is the future and we’re all idiots for not seeing the light?

Here’s what’s happening.

In order to spread the load and increase capacity I was trying to move the MySQL server to another computer with the main server handling the web and the second server running the MySQL database. Even though I have 8 gigs of ram in the main server every now and then for some reason I can’t explain memory usage soars the the server quits working due to high load.

Most all applications talk to MySQL through “localhost” that resolves to IP address 127.0.0.1 port 3306. Normally moving this service is trivial. I just shut down the database on the main server, move the database to another server, start it up there. Then I set up an SSH tunnel that pipes requests from the main server to the new server by intercepting requests and transporting them over TCP. Generally this just works.

However…

The morons at MySQL decided to redefine the meaning of “localhost” and when an application uses “localhost” the client libraries force it to be redirected to talk to the Unix socket /var/lib/mysql/mysql.sock instead of the TCP port. Why they did this is crazy beyond belief but there’s no way to override it short of downloading the source code and fixing it and recompiling MySQL which is the standard answer that you get whenever you complain too much about Open Source.

I however don’t give up so easily. I found a Linux utility called “socat” (socket concatenate ?) that allowed me to create a fake Unix socket and pipe it to a TCP port. And it worked – for a while. But it wasn’t reliable. As long as I was awake and in front of the computer it worked fine. But as soon as I went to sleep it shut down. So I wake up to a mailbox full of “my web site is down”.

So – I put it back on the main server till I find a real solution.

But – this is yet another example of why open source will never fully replace paid for software. If you have a commercial product people can call up the vendor and scream at them to fix bugs. When I sold commercial software and someone called me needing something fixed or added I usually had it the same day. However in the open source world you have a lot of people who have a highly inflated sense of importance who think their software is the greatest thing that was ever written and it’s crap!

What it comes down to as far as I can tell is the VI editor that comes with Unix causes brain damage. I’m totally serious about this. The VI editor absolutely sucks. It’s years behind editors I got with DOS 20 years ago and is an example of how to make an interface that totally sucks. I have refused to learn this editor because I find it offensive. I do most all my editing with a Windows editor, Textpad, and I run Samba on the Linux boxes so that I can mount them from Windows. That’s because there are no good editors in the Linux world. Other than that I use Pico which is a great little Unix editor for quick and dirty but still isn’t up to the kind of power I had in DOS or even CP/M (Wordstar) which is a better editor than any text mode editor in the Unix world.

I’m still waiting for Linux to catch up to CP/M!!!

My theory is that when people use VI it lowers their standards as to what good software should look like and causes their minds to physically alter in a way that leads to VI syndrome leading to delusions that their little piece of shit software is the greatest program in the world and that they are just so superior to microsoft that it’s just a matter of days before Microsoft collapses and everyone accepts Linux as God.

But what the open source world doesn’t get is that Windows programs actually WORK! If you want to install a windows application you download it, click NEXT, AGREE, NEXT, NEXT, NEXT, FINISH and the program is running. In the Linux world this almost never happens and when it does you’re almost sure that something has to be wrong. In Linux you have to edit cryptic config files with poor documentation. Then you try to run the application, get an error, Google the error, and go back and edit again. After many hours you might have it working or you might have to give up.

Out here in the real world localhost = 127.0.0.1 everywhere EXCEPT in MySQL. Not only did they hard code the bizarre behavior but have no way to override it. In fact they do the opposite. Whatever you set the configuration to they override it and force you to use the Unix socket. So doing something that should be simple becomes a nightmare. And you can’t talk to them because they have VI syndrome.



  1. phloidster says:

    my favorite piece of software is “WinVi”

    that’s right, it’s good ol’ vi dressed up as a windows app
    the best of both worlds

    not making this up

  2. startoy says:

    ajaxflakes – Read all about the latest developments on web design 2.0 and ajax + lots of tips. TOP 100+ best Free Opensource Software for windows XP and Vista. Thought i should add it might be helpful to others… http://ajaxflakes.com

  3. puck of pook's hill says:

    a) the author is probably unable tu use it’s head — there are lots of editors out there.
    b) i don’t see what vi hast to do with his current problem with mysql
    c) the whole thing seems to me pretty much pebkac

  4. mojo jo says:

    Wow. You have very little experience or knowledge to be even near a mysql server, let alone being the admin.

    Have you every heard of editing my.cnf to have mysql listen on an external ip address? There is also the possibility to use this new fangled thing called a firewall that will let you limit which machines can even attempt access. you unfortunately do have to go through the difficulties of GRANT privilege TO user@ipaddress on databasename.table . But that requires learning sql syntax, which is probably something new to you.

    Finally, VI doesn’t suck…emacs does.

    “Real sysadmins don’t get carpel tunnel because they don’t use a mouse”

  5. juice says:

    “Why they did this is crazy beyond belief ” – Maybe it’s because using a socket reduces overhead compared to the TCP/IP loopback interface. It’s not as rare an optimization as you might think. Also, mysql does offer commercial support, and if the source wasn’t available and it was commercial, you’d be SOL.

    “The VI editor absolutely sucks. […] I have refused to learn this editor because I find it offensive.” – Then you must have the authority to write on such matters, having such great knowledge of this editor.

  6. Graham Coles says:

    You need to do all that clicking to install a windows program?

    Upgrade to a mac, you just drag and drop it 🙂

  7. dan says:

    Brilliant!

    Let me paraphrase:
    “I can’t get mysql to work because vi sucks!”

    Please go install MS SQL Server, so we can all exploit your default blank sa password.

    And while you’re add it, please be sure to thank the sucky open source software from samba, thats been painstakingly reverse-engineered, despite constant artificial road blocks from a vendor who only pay lip service to interoperability when the courts order it. And even then, they’re not interested in actually delivering.

    That no-cost sucky open source software from Samba allows you to use your botnet infected $300 operating system from a proprietary vendor to modify config files on your no-cost operating system, web, database, and file servers.

    Dvorak, get a real admin. Or … way to generate page views.

    dan

  8. GentleJuggernaut says:

    Marc,

    I must say congratulations for bringing in 174 (at this point) responses to your post, just by leaving your somewhat frustrated opinion (that it appears your management asked you to post). I must disagree with the first couple of posting parties. You should not be fired. They should pull you off technical and give you a blog about linux versus windows. Talk about traffic, but enough about the reality of what this post has done for your site. On to the topic.

    Buy support from MySQL.

    tada! now you have all the wonders of the commercially supported software world with all the beauty of Open Source. Not to mention the big headed egotistical programmers at MySQL (aren’t we all big headed and egotistical, esp. programmers and creatives?) would probably appreciate the support for a product that has been doing amazingly well holding the data for your blogs.

    Enjoyed the post, please update us once you figure out a solution that works for you (and why, I can’t wait to read the comments on that one).

    NSM
    GentleJuggernaut

    Want your own blog on SelfRighteousRant.com?
    Let me know why you deserve one.
    http://www.selfrighteousrant.com/

  9. Amol Hatwar says:

    Hmm… MySQL goofing up not doing what you want it to do, buy a copy of Oracle, DB/2 or something. We all know you have the money! If you don’t want to go that far, crib for a copy at a junket. Still, if that doesn’t work, just upgrade your hardware. But we know you’d still use MySQL and still continue to crib. No siree, not because MySQL just happens to be one of the fastest database on Earth, but because further developments would give an opportunity to crib a little more.

    About VI, well what can one say. Just don’t use it if you hate it so much. But hey, don’t be crying when you have to edit files over a remote network in a jiffy… And oh, by the way since you wouldn’t use VI or Emacs or anything else close to it, make sure they give you extra strong DELETE and BACKSPACE keys.

    If you still think people who take money from you for simply copying stuff in a *legal framework* are listening to you, buy it and sing praises about their software. If you’d really wanted things to improve, start contributing code, or at least read the manual. We all know you have enough IQ for that!

  10. Ryan Gardner says:

    “Most all applications talk to MySQL through “localhost” ”

    No, they most certainly DO NOT. Most all applications talk to MySQL via WHATEVER THE HELL METHOD YOU TELL THEM TO.

    I think this is an instance of where you are solving the wrong problems… “I have a problem – mysql talks to localhost via a socket, how can I make it talk over tcp?” is not the right problem to solve.

    The problem is “I have databases on a remote machine, how do I configure my apps to talk to those machines?” is the right question – and it’s one with a 2 second answer.

  11. Deodoro Filho says:

    I’m not an open source advocate, but I can tell you’ve wasted more time writing that rant than trying to solve the problem, which is, I know for a fact, a very simple problem that wouldn’t take more than a few minutes to solve.

    I agree Windows programs are comfy, work fine and do their job. But is that any reason why you’d say linux stuff wouldn’t work ? No, they both work fine. You don’t like vi, go for gedit, geany, kedit, whatever. I think ssh and vi spare me a whole lot of time I’d be wasting in remote desktop connections and I think they are still the best things ever.

    I don’t think you have the right to say something doesn’t work just because you don’t know how to handle it. Go learn how to use it or quit and turn it into a Windows machine and stop complaining about nothing.

  12. Kris Taylor says:

    Very good honest to goodness rant. I like.

    I’m an old schooler too started programming in BASIC moved to machine language then to Pascal foray into hypercard (weirdest ever) bounced over to AMOS some VB VBA and a bunch of other things.

    I am not a Windows fan. I was holding out with Win 2K for the longest time. I kept saying to myself, if I have to dump 2K I’m moving to Linux, this is it.

    I tried out Apache on my server to get better PHP functionality. It is the industry mainstay but this was my first foray into modern day open source… To learn, to administer, it sucked so bad i went back to IIS. I was in an IRC asking a few questions about playing with the settings, I got the same attitudes that a lot of linux fanboys are raving here. Not good salespeople for the platform thats for sure. It would be one thing if the config files for these apps were standardized, like Rexx or something but everything is different, PHP, Apache, MySQL, not even remotely simmilar (well PHP and MySQL is a bit simmilar I’ll give it that).

    Next trial, I take an old laptop and fire Debian on it to give a stab at linux. Go to install a file – flash player – what a god damn joke. Installing flash player was as easy to figure out as configuring apache for the first time.

    For kicks, I tried out Vista Ultimate x64. I was looking a the glass half empty figuring that it would be such a pig I’d either suck it up and learn linux or try out Linspire.

    Vista x64 is the fastest Windows OS I’ve ever used. Boots in seconds and apps just fly. Note though I said fastest Windows OS I’ve ever used.

    I’m sure my x64 dual core would just fly like a bat out of hell if I was using a text editor all day to configure my applications instead of using the more modern menus, but I’ve got things I have to do – like manage networks.

    For a dedicated simple server like Apache or Mysql that is very busy Linux is king because of the low footprint. I dont see it owning any space much more than that though, Server 2003 is so quick to set up such a fully functioned server that unless you’re working to squeeze more horsepower per server because you have loads of traffic or alternately, trying to use atticware to run a network its just not worth the hassle.

    This is the 21st century. I’m going to get flamed for this, but anything that forces me to use flat text files for configs is the fault of lame coding. I’m not afraid of them and work in them all the time, I dont mind for web php apps but for anything server or desktop side is a joke.

  13. DrunkRussianSA says:

    #128 “Of course, good plumber and electricians get paid more. And people are usually nice to them….”

    What HELLHOLE do you live in?
    Here in Soviet Russia (Re branded to “Russian Federation” recently) a windoze Sysadmin like me (with pretty ahem…. moderate…. experience) gets more $$$ than ANY plumber or elecrician, hell, evem more than some of the mid-management. And the “real gurus” (like those who CAN make MySQL and good ol Lin work as needed 😉 ) get even more…

    And, oh, Mr Perkel, if you ever figure that issue out, please let me know at nsmaccountYOUKNOWWHATgmail.com

    I am somewhat Linux-curious, and will be eager to find out what solution worked for you….

  14. Ashwin says:

    Hmm..

    This post is good I wanna share my story.. I used to hate ubuntu ie Open source Linux till the last 2 months.. Now i am on that.. I dont have windows.. I been a windows fan for 2 years then Linux? Why u ask? Linux rocks.. I dont think Windows can ever beat that!

    Thanks anyway for ur ideas!

  15. Metachemical says:

    As a windows and linux user who is more interested in getting his work done then some utopian ideal or infalating my own ego, this thread perfectly sums up the problem with the linux world; and why my company won’t hire people who sound like many of the people who posted here.

    I’m always amazed at how much vile, uneccesary passion spews from computer gurus, real or imagined.

    It’s just a tool, not life.

  16. John Qwerty says:

    Dear Mr. John Dvorak,

    Does Open Source Software suck?

    So, explain us why do you use an Open Source blog engine (WordPress), developed in an Open Source language (PHP), run it on an Open Source web server (Apache/Linux), and store information in an Open Source database (MySQL)???

    Problems… of course they can happen, specially during a migration (“I was trying to move the MySQL server to another computer…”), and SPECIALLY if you hire an inexperienced admin who refuses to learn his tools.

    So, unless you start using a proprietary blog, developed in a proprietary language, running on a proprietary web server, database and OS… please, be more polite to the people who created the tools you use, and abstain from criticizing Open Source.

  17. John says:

    I think the point you are missing here is the designing process behind Vi and similar programs like Emacs. These programs were designed by ambitious coders who wanted to create a logical fast text editor that they could use to edit files. so thats what they did. they never designed it to be user friendly, they designed for it to be efficient. It wasnt meant to be widely used, so it was never made as an ‘easy’ program to use. You are completely misjudging Vi because you expect it to be something that it was never designed to be.

  18. Jason says:

    Let’s understand that Mr. Dvorak’s a columnist. . .and as such, doesn’t necessarily have to believe in what he writes. Actually, as a journalist also, he doesn’t necessarily have to check his facts either. The mission is to generate controversy and fill up the comments blog . .which by the looks at this one, he’s done a pretty good job. With respect to Mr. Qwerty’s comments, Mr. Dvorak uses open source because it works. I bet, as talented as Mr. Dvorak is, he could write a compelling argument for the use of Open Source vs Windows, but he probably knows it wouldn’t generate nearly the level of comments. Most Windows users aren’t quite the vocal proponents that open source users are. Anyway, my interest is in Open Source for hobbyist ventures only; very rarely for production purposes.

  19. Mike H says:

    I think the problem is with trying to use localhost as a non-local host in the first place. Even in the old Unix host files, localhost was always described as a loop-back. As such, its behavior is supposed to always refer to the local host and to bypass a lot of the issues that can arise with networking. It allowed developing networked software even when your (dial up?) network was down. So, I don’t consider it invalid behavior for MySQL to implement it in a way that isn’t modifiable by network configuration tricks. If you want to change the host of your MySQL server server, you need to use a different name than localhost.

    On vi, I have liked it for 20 years. It’s a rich, fast text editor. Yes, it has a steep learning curve, but once you learn it, it’s pretty powerful. It DOES have the advantage of being available virtually everywhere. I run it in Windows, Linux, and Unix.

    On rants: we’ve all been there. Purchased or open, software developers make choices that sometimes prevent our doing what we want. Hopefully communicating with others will give you a way to do it, even if it’s not the way you first wanted.

    on OSSs: I do find I get more flexibility out of these OSS tools than I do out of the proprietary tools that don’t tell you how things work and lock you into non-obvious assumptions, and, of course, routinely expose root priviledges to arbitrary programs coming in over the network. Security is the #1 reason I’ve finally shut down networking on my Windows machine.

    John, Firefox works fine for me, with lots of processes … could be it’s not Firefox causing the problem.

  20. Jim Edwards says:

    Awsome…well said!

    Your analysis on self inflated egos and the VI Syndrome are dead on. I’m going to have to forward this on to some friends who are suffering from VI syndrome…however, I fear they may be too far gone.

    Great Post!

  21. JASON says:

    –bind-address –port.

    It’s in the docs.
    man mysqld on the system where he watned to run the DB would have told him.

    3 minutes in google would have helped almost as much.
    Despite his 30yrs experience John, the dude really does not seem to be all that cluey.

  22. anon finnish person says:

    Do people like your admin still exist?

    He sounds like he really needs mom to hold his hand.

    Lol he sounds like he is in a wrong job. Sad fellow.

    And all the while he is blaming others for his ignorance. Poor fella, I hope you keep his identity secret as no-one intelligent would hire the guy.

  23. cniggeler says:

    The last post we got from Marc was #153 over three months ago! Don’t leave us in suspense – what happened?

    And why was 75% of this thread editor holy wars when there was virtually no follow-up to Dodge Impalas?

  24. ChrisC says:

    I found Marc’s disgruntled analysis of his problem in the light of Open Source’s failings crystallised some of my own feelings. I was taken in by Open Source’s claims about ten years ago. It’s been a long journey realising many of the movements claims are not well based in fact.

    I find the responses to the original article quite typical: a OS product has departed from standard in a specific way. Rather than agreeing that the product must conform to accepted standards and that a fix is required, we get a great deal of emotion. I suspect this convinces no-one, outside the movement.

    The problem of standards gets to the heart of OS S’s great weakness: unity. There is an ancient idea: divide and conquer. This is particularity applicable to operating systems: Linux has dozens upon dozens of variants. If you are releasing software to users you cannot possibly perform QA on all of them, unlike other major platforms.

    On “flexibility”: flexibility is not actually what users want: users want tools that work well ,work the same way everywhere, and work first time (and every time) without needing to know anything outside the problem domain the tool addresses.

  25. With cheaper cost, better performance, and better reliability, Open Source is threatening Corporate America –more specifically, Microsoft.

    Corporate America is what stands between us and the never-ending threat of PRC, Islam, and Commie Liberals. If Microsoft dies, then so will America and the American family values. Open Source is UN-AMERICAN and threatening the very values that our Founding Fathers had strived for. Open Source is COMMIE. A true, patriotic American uses Microsoft.

  26. ouroborous says:

    I find the open source apologists interesting.

    They will blame everyone and everything except a piece of open source software for problems.

    As an example, I recently made a run at using Linux as my primary home desktop. The reason I did this was because (a) my hard disk had crashed and I did not feel like recovering Windows XP at the moment, and (b) I am fearful of the cluster-f*ck that is Vista. XP has served me faithfully for years now; why must Microsoft keep trying to FORCE me to buy Vista? Oh right, money…

    But, I digress.

    Installing Linux (Ubuntu, the “easiest” of the distros, no less) was easy. Making it WORK was an absolute nightmare. For instance, for some reason my system would invariably hang during boot if the splash screen wasn’t disabled. Why this is, I don’t care. But it would. So how is this a good user experience? I googled the issue and it was far from an uncommon problem, apparently.

    Next, making my graphics card support dual monitors and screen-spanning was an absolute, absolute, absolute NIGHTMARE. Something that Windows XP had handled effortlessly, almost in its sleep, required — in Ubuntu — endless reboots, endless twiddling with poorly-documented switches in xorg.conf, endless unexplained X shutdowns.

    Now, 90% of my hardware wouldn’t work. My TASCAM-US144L that I used for music production? Unsupported, never will be supported. My Logitech Razor mouse? Works, but none of the “extra” buttons work. My G15 keyboard? Only works as a 101-key keyboard (and don’t fool yourself, the open-source G15 libs are hobbyist quality AT BEST).

    Some of my Windows apps worked (yay! I could play WoW… and in Linux’s defense, it actually ran faster under Wine with OpenGL than it did natively on Windows; I blame DirectX) — but most didn’t.

    My VPN software (Juniper’s Netconnect) required an incredible amount of work and googling, not to mention the patience of a Buddhist monk, to get even limping along. And it’s written in Java, so you can’t blame OS-dependant code.

    The clock — the damned, system clock, that part of the PC that has “just worked” for me on computers since, oh, the stone ages — drifted, on the order of 20 minutes per hour. One time I ended up keeping my girlfriend up till 11pm playing WoW because the bloody clock said it was 9pm. I finally fixed this by disabling the TSC read (IIRC) in the kernel boot parms, but how many “mom and pop” people are going to be willing to touch the kernel params, let alone know which one to use?

    I mean, every aspect of the bloody OS was broken — from the UI to the clock to the drivers to the utter lack of compelling applications. I was never — NEVER — able to play a DVD from Netflix on that computer. But Windows “just worked”… hmmm…

    And that’s why I eventually switched back. Linux and open source may be great for some closed-box, server closet type applications (but even there, if I were a CIO, I would question whether saving a few hundred dollars on the OS was really worth having *NOBODY* to call when it broke). But for the average user, it’s just an absolute nightmare.

    And the attitude of the open source crowd — you know, the fanboys who think that typing “M$” is somehow clever — this just makes things worse. I’ve been writing kernel drivers for Windows for ages. I’ve hacked more programs than many of these fanboys have RUN. I’ve been doing assembly-level debugging (and coding) since 1983. I really, honestly, know what I’m doing (I just don’t want to have to reprogram my goddamn OS just to play a game…), so smug insinuations that I must be too stupid to understand Linux and open source really aren’t helping your cause much. There are some very, very clever, and very, very helpful people in the open source community… but sadly, they seem to be the exception rather than the rule.

    After this latest, six month experiment with Linux and open source, I’ve happily reverted to Windows XP. So far, everything just works — except Firefox, that is.

    *sigh*

  27. RealPerson says:

    LOL @ open source nerds. I get paid 85 dollars an hour to implement M$ software that actually works for huge companies (the dollar sign in MS is getting really annoying btw, i’m already quite aware that i’m making a shitload money more than YOU are, so fuck off and go back to you dungeons and dragons)

  28. RealPerson says:

    LOL @ open source nerds. I get paid 85 dollars an hour to implement M$ software that actually works for huge companies (the dollar sign in MS is getting really annoying btw, i’m already quite aware that i’m making a shitload money more than YOU are, so fuck off and go back to your dungeons and dragons)

  29. ECA says:

    Truth..

    If someone would make a SOLID gaming OS..
    no matter if its LINUX or MS or APPLE..
    YOU WOULD HAVE SALES..

  30. YES says:

    YEP, you got this right. I could add other reasons as to why OSS generally tends to suck, especially after it gets older, although NOT all of it fits this category. Some of it is great – but much is a disgrace and I wonder what the people working on it are smoking. Is pot usage on the rise among OSS developers or something?

    Example:
    FireFox sucks–use OPERA. It’s free, it’s not IE, and it supports a crapload fancy features out of the box without installing a million stupid plugins. FireFox not to mention other browsers) has been stealing features from the INNOVATION PIONEER browser for years – yay Opera. Opera is an example of (former) COMMERCIAL software that HAD to work well or it would have died. Looking at FireFox’s current state, projected evolution, and the final state of Opera, the debate is about settled.

    Try using a fancy 3d editor like Rhino (commercial) – pretty easy right? Now try Blender (OSS). I rest my case. You’ll kill yourself within 5 minutes trying to learn that piece of UI design violation trash.


6

Bad Behavior has blocked 9302 access attempts in the last 7 days.