以下內容是本人摸索的一些記錄,適用於本人,請謹慎參考!
以前我用的是Windows2012 的服務器,那時候只是抱着玩一玩的心態,所有用的是Windows,但是后來被導師給DISS了,於是決定改服務器的操作系統:
(一)下載安裝php+mysql+apache
我選的操作系統是Linux的Ubuntu系統,使用的工具是xshell,xftp
1.切換管理員身份 //這一步我沒用,我進入的時候就是root權限
在ubuntu中需要用root身份進行操作,所以用下面的命令確保以root身份登錄:
sudo su
2.開始安裝mysql5
apt-get install mysql-server mysql-client
你將被要求提供一個mysql的root用戶的密碼,我們需要在紅色區域設置密碼。
new password for the mysql root user: repeat password for the mysql root user:
3.安裝apache2
apache2的是作為一個ubuntu的軟件包,因此我們可以直接用下面命令安裝它:
apt-get install apache2
現在,您的瀏覽器到http://localhost,你應該看到apache2的測試頁:
如果順利的話會出現:
It work!
apache的默認文檔根目錄是在ubuntu上的/var/www/html目錄 ,配置文件是/ etc/apache2/apache2.conf。配置存儲在的子目錄在/etc/apache2目錄。
4.安裝php7.0
我們可以直接安裝php7和apache的php7的模塊,如下:
apt-get install php7.0 libapache2-mod-php7.0
安裝完需要重啟
/etc/init.d/apache2 restart
6.測試的php7並獲取php7安裝的詳細信息
默認網站的文件根目錄是在/var/www/html下中。現在我們將在該目錄中創建一個小型php文件(info.php的)在瀏覽器中調用它。該文件將顯示很多關於我們的php安裝,如安裝的php版本和有用的一些細節。
vi /var/www/html/info.php
在系統文件/var/www/html下建立文件info.php,里面編寫
<?php
phpinfo()
?>
(ESC + :wq 保存並退出vi)
現在,我們可以用瀏覽器訪問http://localhost/info.php 或者 http://ip/info.php
正如你所看到的,php正常工作.如果你繼續向下滾動,你會看到所有在php中已經啟用的模塊。mysql是沒有列出,這意味着我們沒有在php5支持mysql。
7.php獲得mysql的支持
讓php在mysql中獲得支持,我們可以安裝的php-mysql軟件包。安裝一些其他的php模塊,以及您可能需要的應用程序,這是一個好主意:
apt-cache search php
還安裝需要安裝的
apt-get install (所有可安裝的都裝上)
現在重新啟動apache2的:
/etc/init.d/apache2 restart
現在,重載http://localhost/info.php在您的瀏覽器,並再次向下滾動到模塊部分。現在,你應該找到許多新的模塊,包括mysql模塊:
8.安裝phpmyadmin
phpmyadmin是一個網絡接口,通過它可以管理你的mysql數據庫。
apt-get install phpmyadmin
phpmyadmin會自動安裝在/usr/share/phpmyadmin下,然后將phpmyadmin拷貝到/var/www目錄下面:
cp -r /usr/share/phpmyadmin /var/www/html
運行http://localhost/phpmyadmin/index.html,報錯The mbstring extension is missing. Please check your PHP configuration.
修改php.ini文件(可以通過瀏覽http://localhost/info.php,在Loaded configuration file欄中找到php.ini文件所在的位置),gedit或vim修改php.ini文件:找到這一行:;extension=php_mbstring.dll,去掉句首的分號,保存退出。之后再次重啟:
/etc/init.d/apache2 restart
再次瀏覽http://localhost/phpmyadmin/index.html,正常進入phpmyadmin了
(二)我打算在我自己的win10系統上面用Navicat for MySQL連接服務器上的MySQL
首先需要在Linux服務器上面添加相應的安全組
這是添加成功后的情況:
------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------ ------
另外,我還遇到了一種情況
Navicat連接mysql數據庫報錯2003 - Can't connect to MySQL server on '*.*.*.*' (60 "Operation timed out)
分析問題:
這句話的意思是“不能夠連接到主機(名稱為localhost)上的MYSQL服務”。這樣問題就明了了。既然連接不到,原因就可能是:
1----主機localhost上不存在MYSQL服務;
2----主機上存在MYSQL服務,但是服務未啟動。
1)查看哪些端口被打開 netstat -anp
127.0.0.1:3306 -- 指mysql數據庫僅能在本地下訪問;
(2)我們把127.0.0.1:3306改為0.0.0.0:3306,這樣才能讓所有用戶可以遠程訪問mysql數據庫;
打開/etc/mysql/mysql.cnf
找到bind-address= 127.0.0.1
把它改成 bind-address= 0.0.0.0
(mysql5.7.24版本,配置文件目錄是:/etc/mysql/mysql.conf.d/mysqld.cnf)
命令:service mysql restart //這里需要注意,是mysql而不是mysqld ,我因為mysqld搞得弄不對,踩了很多坑
之后:
1.輸入密碼回車,登錄;
mysql -u root -p
2.授權遠程用戶登錄
2.1.對所有 root
用戶授權:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root用戶密碼' WITH GRANT OPTION;
2.2.對指定 IP 的 root
用戶授權:
GRANT ALL PRIVILEGES ON *.* TO root@'指定的IP地址' IDENTIFIED BY 'root用戶密碼' WITH GRANT OPTION;
2.3.也可以授權指定的表,這就不搞的那么麻煩了,反正本地自己用。
3.重載授權表 //很重要 必須做
FLUSH PRIVILEGES;
4.exit
退出 Mysql
之后就連接成功了。
參考資料:
https://blog.csdn.net/weixin_42069074/article/details/86649611
https://blog.csdn.net/wkupaochuan/article/details/7908363
https://blog.csdn.net/weixin_41978547/article/details/79886744
https://www.cnblogs.com/zkfopen/p/9469787.html
https://www.cnblogs.com/adair/p/8665885.html