WordPressをローカルにインストールしようとしています。 mysql(MariaDB)とphp-mysqliをインストールしました。 mysqlコンソールでユーザーとデータベースを作成し、次の3つのファイルがあります。
$ cd /etc/php.d/
$ cat 30-mysqli.ini 30-pdo_mysql.ini 20-mysqlnd.ini
; Enable mysqli extension module
extension=mysqli.so
; Enable pdo_mysql extension module
extension=pdo_mysql.so
; Enable mysqlnd extension module
extension=mysqlnd.so
php-mysqliをインストールすると自動的に追加されます。ファイルは次の場所に存在します。/usr/lib64/php/modules/
しかし、httpdサーバーを再起動しました
sudo systemctl restart httpd
それでもエラーがあります。
未定義の関数呼び出し
mysqli_connect()
コードを使用する場合:
$link = mysqli_connect("localhost", "wordpress", "wordpress", "wordpress");
phpinfo()を実行すると、モジュールセクションにこの内容が表示されますが、mysqlの設定はなく、pdoの設定にはsqliteしかありません。
この関数はget_loaded_extensions()
mysql 拡張を返しません。
そして、php -i
mysqlとmysql pdoの設定を表示します。
また、システムを再起動してみましたが、何の効果もありませんでした。
Fedora 27にphp + mysqlをインストールする方法は? PHP 7.1.22があります。
編集する:mysql用のiniファイルが解析されず、ファイルリストにないようです。これらのファイルには読み取り権限があり、他のファイルと同様にルートが所有します。
$ ls -l {30-mysqli.ini,30-pdo_mysql.ini,20-mysqlnd.ini}
-rw-r--r--. 1 root root 55 09-12 07:12 20-mysqlnd.ini
-rw-r--r--. 1 root root 53 09-12 07:12 30-mysqli.ini
-rw-r--r--. 1 root root 59 09-12 07:12 30-pdo_mysql.ini
編集2:
$ php --ri mysqli && php --ri mysqlnd && php --ri pdo && php --ri pdo_mysql
mysqli
MysqlI Support => enabled
Client API library version => mysqlnd 5.0.12-dev - 20150407 - $Id: 38fea24f2847fa7519001be390c98ae0acafe387 $
Active Persistent Links => 0
Inactive Persistent Links => 0
Active Links => 0
Directive => Local Value => Master Value
mysqli.max_links => Unlimited => Unlimited
mysqli.max_persistent => Unlimited => Unlimited
mysqli.allow_persistent => On => On
mysqli.rollback_on_cached_plink => Off => Off
mysqli.default_host => localhost => localhost
mysqli.default_user => no value => no value
mysqli.default_pw => no value => no value
mysqli.default_port => 3306 => 3306
mysqli.default_socket => /var/lib/mysql/mysql.sock => /var/lib/mysql/mysql.sock
mysqli.reconnect => Off => Off
mysqli.allow_local_infile => On => On
mysqlnd
mysqlnd => enabled
Version => mysqlnd 5.0.12-dev - 20150407 - $Id: 38fea24f2847fa7519001be390c98ae0acafe387 $
Compression => supported
core SSL => supported
extended SSL => supported
Command buffer size => 4096
Read buffer size => 32768
Read timeout => 31536000
Collecting statistics => Yes
Collecting memory statistics => No
Tracing => n/a
Loaded plugins => mysqlnd,debug_trace,auth_plugin_mysql_native_password,auth_plugin_mysql_clear_password,auth_plugin_caching_sha2_password,auth_plugin_sha256_password
API Extensions => mysqli,pdo_mysql
mysqlnd statistics =>
bytes_sent => 0
bytes_received => 0
packets_sent => 0
packets_received => 0
protocol_overhead_in => 0
protocol_overhead_out => 0
bytes_received_ok_packet => 0
bytes_received_eof_packet => 0
bytes_received_rset_header_packet => 0
bytes_received_rset_field_meta_packet => 0
bytes_received_rset_row_packet => 0
bytes_received_prepare_response_packet => 0
bytes_received_change_user_packet => 0
packets_sent_command => 0
packets_received_ok => 0
packets_received_eof => 0
packets_received_rset_header => 0
packets_received_rset_field_meta => 0
packets_received_rset_row => 0
packets_received_prepare_response => 0
packets_received_change_user => 0
result_set_queries => 0
non_result_set_queries => 0
no_index_used => 0
bad_index_used => 0
slow_queries => 0
buffered_sets => 0
unbuffered_sets => 0
ps_buffered_sets => 0
ps_unbuffered_sets => 0
flushed_normal_sets => 0
flushed_ps_sets => 0
ps_prepared_never_executed => 0
ps_prepared_once_executed => 0
rows_fetched_from_server_normal => 0
rows_fetched_from_server_ps => 0
rows_buffered_from_client_normal => 0
rows_buffered_from_client_ps => 0
rows_fetched_from_client_normal_buffered => 0
rows_fetched_from_client_normal_unbuffered => 0
rows_fetched_from_client_ps_buffered => 0
rows_fetched_from_client_ps_unbuffered => 0
rows_fetched_from_client_ps_cursor => 0
rows_affected_normal => 0
rows_affected_ps => 0
rows_skipped_normal => 0
rows_skipped_ps => 0
copy_on_write_saved => 0
copy_on_write_performed => 0
command_buffer_too_small => 0
connect_success => 0
connect_failure => 0
connection_reused => 0
reconnect => 0
pconnect_success => 0
active_connections => 0
active_persistent_connections => 0
explicit_close => 0
implicit_close => 0
disconnect_close => 0
in_middle_of_command_close => 0
explicit_free_result => 0
implicit_free_result => 0
explicit_stmt_close => 0
implicit_stmt_close => 0
mem_emalloc_count => 0
mem_emalloc_amount => 0
mem_ecalloc_count => 0
mem_ecalloc_amount => 0
mem_erealloc_count => 0
mem_erealloc_amount => 0
mem_efree_count => 0
mem_efree_amount => 0
mem_malloc_count => 0
mem_malloc_amount => 0
mem_calloc_count => 0
mem_calloc_amount => 0
mem_realloc_count => 0
mem_realloc_amount => 0
mem_free_count => 0
mem_free_amount => 0
mem_estrndup_count => 0
mem_strndup_count => 0
mem_estrdup_count => 0
mem_strdup_count => 0
mem_edupl_count => 0
mem_dupl_count => 0
proto_text_fetched_null => 0
proto_text_fetched_bit => 0
proto_text_fetched_tinyint => 0
proto_text_fetched_short => 0
proto_text_fetched_int24 => 0
proto_text_fetched_int => 0
proto_text_fetched_bigint => 0
proto_text_fetched_decimal => 0
proto_text_fetched_float => 0
proto_text_fetched_double => 0
proto_text_fetched_date => 0
proto_text_fetched_year => 0
proto_text_fetched_time => 0
proto_text_fetched_datetime => 0
proto_text_fetched_timestamp => 0
proto_text_fetched_string => 0
proto_text_fetched_blob => 0
proto_text_fetched_enum => 0
proto_text_fetched_set => 0
proto_text_fetched_geometry => 0
proto_text_fetched_other => 0
proto_binary_fetched_null => 0
proto_binary_fetched_bit => 0
proto_binary_fetched_tinyint => 0
proto_binary_fetched_short => 0
proto_binary_fetched_int24 => 0
proto_binary_fetched_int => 0
proto_binary_fetched_bigint => 0
proto_binary_fetched_decimal => 0
proto_binary_fetched_float => 0
proto_binary_fetched_double => 0
proto_binary_fetched_date => 0
proto_binary_fetched_year => 0
proto_binary_fetched_time => 0
proto_binary_fetched_datetime => 0
proto_binary_fetched_timestamp => 0
proto_binary_fetched_string => 0
proto_binary_fetched_json => 0
proto_binary_fetched_blob => 0
proto_binary_fetched_enum => 0
proto_binary_fetched_set => 0
proto_binary_fetched_geometry => 0
proto_binary_fetched_other => 0
init_command_executed_count => 0
init_command_failed_count => 0
com_quit => 0
com_init_db => 0
com_query => 0
com_field_list => 0
com_create_db => 0
com_drop_db => 0
com_refresh => 0
com_shutdown => 0
com_statistics => 0
com_process_info => 0
com_connect => 0
com_process_kill => 0
com_debug => 0
com_ping => 0
com_time => 0
com_delayed_insert => 0
com_change_user => 0
com_binlog_dump => 0
com_table_dump => 0
com_connect_out => 0
com_register_slave => 0
com_stmt_prepare => 0
com_stmt_execute => 0
com_stmt_send_long_data => 0
com_stmt_close => 0
com_stmt_reset => 0
com_stmt_set_option => 0
com_stmt_fetch => 0
com_deamon => 0
bytes_received_real_data_normal => 0
bytes_received_real_data_ps => 0
PDO
PDO support => enabled
PDO drivers => mysql, sqlite
pdo_mysql
PDO Driver for MySQL => enabled
Client API version => mysqlnd 5.0.12-dev - 20150407 - $Id: 38fea24f2847fa7519001be390c98ae0acafe387 $
Directive => Local Value => Master Value
pdo_mysql.default_socket => /var/lib/mysql/mysql.sock => /var/lib/mysql/mysql.sock
答え1
PHPの設定が正しいようです。
奇妙なことに、httpdと他のサービスでは、時にはsystemctl restart
実際に何もしないようです。ただし、サービスが正しく再起動されますsystemctl stop
。systemctl start
答え2
PHPをインストールするには、次のように入力します。
$ sudo dnfインストールphp-cli
上記のコマンドは、PHPスクリプトを実行するためのコマンドラインインタフェース、/usr/bin/php実行可能ファイル、およびCGIインタフェースを含む信頼性の高い最新のPHPパッケージをインストールします。
単体テスト用のPHPUnitやPHPプロジェクトの依存関係を管理するためのComposerなどの他のパッケージをインストールすることもできます。次のコマンドを使用してインストールできます。
$ sudo dnfインストールphpunit作曲家
PHPモジュール
PHPはいくつかの拡張セットのみを提供し、他の拡張は別々にインストールする必要があります。 PHPモジュール用のパッケージにはphpプレフィックスが付いているので、mysqli拡張が必要な場合は次のようにします。
$ sudo dnfインストールphp-mysqli
PHP開発サーバー
PHPには、フル機能のWebサーバーの代わりに使用できる単純なWebサーバーが含まれています。開発専用なので、本番環境には適していません。
プロジェクトのルートディレクトリに次のように入力してPHP開発サーバーを起動できます。
$ sudo php --server localhost:8080 --docroot 。
サーバーにアクセスできます。http://localhost:8080/。
答え3
MySQLをインストールする前に、mysqlまたはmysqlサーバーがインストールされていることを確認する必要があります。
rpm -q mysql これでパッケージがわかります yum install mysql mysql-server
したがって、インストール後のコマンドを使用して確認する必要があります。
rpm -q mysqlサーバー
Fedoraでmysqlを使用できるようになりました。