2016年12月11日日曜日

ubuntu,xampp,wp-cli,mysql , wordpressブラウザで動くけどwp-cliするとエラー

    UbuntuにXAMPPをインストールして、PATHを通す - 部屋の中にも一年
    コマンドラインから MySQL に接続する - MySQL 逆引きリファレンス

    /opt/lampp/bin/ にパス通してmysqlに接続したあとに
    wp core config --dbname=wordpress --dbuser=wordpress --dbpass=pass --dbhost=localhost --dbprefix=wordpress_
    したら
    Success: Generated 'wp-config.php' file.
    となった

    wordpressのインストールしたときはDBしかデータ更新はされない?

    wp core check-updateをしたら
  Your PHP installation appears to be missing the MySQL extension which is required by WordPress.
    と出た...

    sudo apt install php-mysql
    したら
  Error: Error establishing a database connection. This either means that the username and password information in your `wp-config.php` file is incorrect or we can’t contact the database server at `localhost`. This could mean your host’s database server is down.
    How to Fix the Error Establishing a Database Connection in WordPress

    wp-config.phpに define('WP_ALLOW_REPAIR', true); 記述してみたが変わりなし...

    ローカル環境のブラウザでは問題なく動くのにwp-cliでエラーになるのは何が原因だろうか?

    mysqlのsocketがなんたらって情報があったので
    /tmp/mysql.sockなんて知らんがな - 自分の仕事を憎むには人生は余りにも短い
    mysqladmin で 
    socket                            /opt/lampp/var/mysql/mysql.sock
    がわかったのでwp-config.php の 
    define( 'DB_HOST', 'localhost' );
    を
    define( 'DB_HOST', 'localhost:/opt/lampp/var/mysql/mysql.sock' );
    に変えたら動いた!  よくわからないけど疲れた...




    ちょっと使ってたらエラーが出るようになってしまった
    PHP Fatal error:  Uncaught Error: Call to undefined function is_admin() in phar:///usr/local/bin/wp/php/WP_CLI/Runner.php(981) : eval()'d code:80
    Stack trace:
    #0 phar:///usr/local/bin/wp/php/WP_CLI/Runner.php(981): eval()
    #1 phar:///usr/local/bin/wp/php/WP_CLI/Runner.php(944): WP_CLI\Runner->load_wordpress()
    #2 phar:///usr/local/bin/wp/php/wp-cli.php(21): WP_CLI\Runner->start()
    #3 phar:///usr/local/bin/wp/php/boot-phar.php(5): include('phar:///usr/loc...')
    #4 /usr/local/bin/wp(4): include('phar:///usr/loc...')
    #5 {main}
      thrown in phar:///usr/local/bin/wp/php/WP_CLI/Runner.php(981) : eval()'d code on line 80