1、怎麼用mysql登錄遠程伺服器
MySQL允許遠程訪問的設置
1.注釋bind-address = 127.0.0.1。
代碼如下:
>cd /etc/mysql
>sudo vim my.cnf
將bind-address = 127.0.0.1注釋掉(即在行首加#),如下:
代碼如下:
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address = 127.0.0.1
除了注視掉這句話之外,還可以把後面的IP地址修改成允許連接的IP地址。但是,如果只是開發用的資料庫,為了方便起見,還是推薦直接注釋掉。
從上面的注釋中,可以看出,舊版本的MySQL(從一些資料上顯示是5.0及其以前的版本)上使用的是skip-networking。所以,善意提醒一下,使用舊版本的小夥伴請注意一下。
2.刪除匿名用戶
登錄進資料庫:
代碼如下:
>mysql -uroot -p123456
然後,切換到資料庫mysql。SQL如下:
代碼如下:
use mysql;
然後,刪除匿名用戶。SQL如下:
代碼如下:
delete from user where user='';
3.增加允許遠程訪問的用戶或者允許現有用戶的遠程訪問。
接著上面,刪除匿名用戶後,給root授予在任意主機(%)訪問任意資料庫的所有許可權。SQL語句如下:
代碼如下:
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
如果需要指定訪問主機,可以把%替換為主機的IP或者主機名。另外,這種方法會在資料庫mysql的表user中,增加一條記錄。如果不想增加記錄,只是想把某個已存在的用戶(例如root)修改成允許遠程主機訪問,則可以使用如下SQL來完成:
代碼如下:
update user set host='%' where user='root' and host='localhost';
4.退出資料庫
代碼如下:
mysql> exit
在MySQL Shell執行完SQL後,需要退出到Bash執行系統命令,需要執行exit。因為這個太常用也太簡單。以下內容就提示「退出」,不再重復列出這個命令。
5.重啟資料庫
完成上述所有步驟後,需要重啟一下資料庫,才能讓修改的配置生效。執行如下命令重啟資料庫:
代碼如下:
>sudo service mysql restart
到此為止,應該就可以遠程訪問資料庫了。
2、MySQL資料庫登錄方法有哪些?
MySQL資料庫登錄方法:要完成登錄操作,首先要進入機器的命令行界面並輸入如下所示的命令:
mysql -h hostname -u username -p
mysql命令將調用mySQL監視程序。這是一個可以將我們連接到mySQL伺服器客戶端的命令行公開。
-h命令選項用於指定所希望連接的主機,即運行mySQL伺服器的機器。如果正在該mySQL伺服器所運行的機器上
運行該命令,可以忽略該選項和hostname參數。如果不是,必須用運行mySQL伺服器的主機名稱來代替主機名稱參數。
-u命令選項勇於指定連接資料庫時使用的用戶名稱。如果不指定,默認值是登錄該操作系統時使用的用戶名。
如果你在自己的機器或者伺服器上安裝了mySQL,必須以root身份進行登錄並且創建資料庫。假設已經安裝上了mySQL資料庫,而且root用戶是進行各項操作的唯一用戶。如果在其他人
管理的機器上使用mySQL,必須使用他們提供的用戶名。
-p命令選項用來告訴伺服器要使用一個密碼來連接它,如果登錄時使用的用戶名沒有設置密碼,可以忽略該選項。
如果以root用戶的身份登錄並沒有設置root密碼,那麼需要設置一個root密碼,沒有root密碼系統是不安全的。
我們不必在本行命令中包含密碼,mySQL伺服器會詢問密碼,在輸入上訴命令之後會得到如下響應:
Enter password:
(若沒有該行命令出現,請確認mySQL伺服器是否正在運行,並且上述mySQL命令應該包含在路徑中。)必須輸入密碼。如果一切順利將得到類似如下所示響應:
welcome to the mySQL monitor.Commands end with ; or \g.
Your mySQL connection id is 1 to server version:5.1.25-rc-community mySQL community Server(GPL)
Type 'help;'or'\h'for help.Type'\c'to clear the buffer.
mysql>
如果是在自己的機器上,沒有得到類似的響應,請確認mysql_install_db是否已經運行(如果需要的話),是否設置了root用戶密碼,並確認輸入的密碼是否正確。
3、2. 本地mysql資料庫伺服器(localhost)的登錄用戶名為root很著急
去下載個ECSHOP,他是個開源軟體。解壓後在他的 includes 目錄下有一個 cls_mysql.php 的類。是他封裝好的操作mysql的類。非常好用。
示例:
$db = new cls_mysql('127.0.0.1', 'root', '654321', 'studyphp');
$sql = "INSERT INTO `student` VALUES(1, 'Lily', 'girl')";
$res = $db->query(sql);
if($res){
echo 'insert successed!';
}else{
echo 'insert failed!';
}
4、如何在命令行登陸mysql資料庫
MYSQL客戶端登錄與退出
在啟動MySQL伺服器後,我們需要使用管理員用戶登錄MySQL伺服器,然後來對伺服器進行操作。登錄MySQL需要使用MySQL的客戶端程序:mysql.exe
登錄:mysql -u root -p 123 -h localhost;
-u:後面的root是用戶名,這里使用的是超級管理員root;
-p:後面的123是密碼,這是在安裝MySQL時就已經指定的密碼;
-h:後面給出的localhost是伺服器主機名,它是可以省略的,例如:mysql -u root -p 123;
退出:quit或exit;
如何確認是不是客戶端,方法如下:
在登錄成功後,打開windows任務管理器,會有一個名為mysql.exe的進程運行,所以mysql.exe是客戶端程序。
5、#2006 無法登錄 mysql 伺服器
出現以上情況:
1.看是否mysql啟動;
2.看mysql埠是否和phpmyadmin埠一致 (phpmyadmin埠默認為3306)
3.修改phpmyadmin目錄下內libraries下配置文容件config.default.php。
$cfg['Servers'][$i]['port'] = ''
這句注釋表明這里空表示使用的是MySQL的默認埠3306。只要把它改為:
$cfg['Servers'][$i]['port'] = '3307';
附: cmd命令提示符下都是連接3306的埠,所有命令也是連接3306的,如何才能更改讓它連接3307?
mysql -P 3307 -uroot -p
mysql --help
里有使用方法
6、mysql伺服器啟動後怎樣登錄mysql創建資料庫
windows下:
打開命令行窗口(cmd),如果安裝的Mysql服務名為mysql,則net start mysql(此步也可直接在控制面板->管理->服務中啟動Mysql)
輸入命令進入到Mysql的安裝目錄中的bin目錄內,如安裝目錄為c:\program files\Mysql,則輸入命令cd c:\program files\Mysql\bin;
使用命令啟動mysql服務,如用戶名為root密碼為123456,則命令mysql -u root -p 123456;如果登錄成功,則說明mysql服務啟動成功。
Linux下:
直接在命令行窗口中service mysql start(假設服務名稱為mysql);
然後按windows下的第2和第3步進行同樣驗證;
7、如何登陸伺服器mysql資料庫
m
8、登陸mysql伺服器需要密碼忘記了怎麼辦
如果是root密碼:
方法一:
MySQL提供跳過訪問控制的命令行參數,通過在命令行以此命令啟動MySQL伺服器:
safe_mysqld --skip-grant-tables&
即可跳過MySQL的訪問控制,任何人都可以在控制台以管理員的身份進入MySQL資料庫。
需要注意的是在修改完密碼以後要把MySQL伺服器停掉重新啟動才會生效
方法二:
可以進行如下的步驟重新設置MySQL的root密碼:
1.首先確認伺服器出於安全的狀態,也就是沒有人能夠任意地連接MySQL資料庫。
因為在重新設置MySQL的root密碼的期間,MySQL資料庫完全出於沒有密碼保護的
狀態下,其他的用戶也可以任意地登錄和修改MySQL的信息。可以採用將MySQL對
外的埠封閉,並且停止Apache以及所有的用戶進程的方法實現伺服器的准安全
狀態。最安全的狀態是到伺服器的Console上面操作,並且拔掉網線。
2.修改MySQL的登錄設置:
# vi /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-name-resolve
skip-grant-tables
保存並且退出vi。
3.重新啟動mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
4.登錄並修改MySQL的root密碼
# /usr/bin/mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.23.56
Type 『help;』 or 『\h』 for help. Type 『\c』 to clear the buffer.
mysql> USE mysql ;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> UPDATE user SET Password = password ( 『new-password』 ) WHERE User = 『root』 ;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> flush privileges ;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
Bye
5.將MySQL的登錄設置修改回來
# vi /etc/my.cnf
將剛才在[mysqld]的段中加上的skip-grant-tables刪除
保存並且退出vi。
6.重新啟動mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
windows
1.以系統管理員身份登陸系統。
2.打開cmd—–net start 查看mysql是否啟動。啟動的話就停止net stop mysql.
3.我的mysql安裝在d:\usr\local\mysql4\bin下。
4.跳過許可權檢查啟動mysql.
d:\usr\local\mysql4\bin\mysqld-nt –skip-grant-tables
5.重新打開cmd。進到d:\usr\local\mysql4\bin下:
d:\usr\local\mysql4\bin\mysqladmin -uroot flush-privileges password 「newpassword」
d:\usr\local\mysql4\bin\mysqladmin -u root -p shutdown 這句提示你重新輸密碼。
6.在cmd里net start mysql
7.搞定了。
2,MySQL4.1以上版本一種密碼錯誤問題的解決方法
1 # SET PASSWORD FOR 』some_user』@』some_host』 = OLD_PASSWORD(『newpwd』);
2 # FLUSH PRIVILEGES;
3,Mysql資料庫修復
myisamchk -r -q d:\mysql\data\latin1\*
r代表修復
q代錶快速
d:\mysql\data\latin1\*資料庫裡面 *代表裡面的所有的文件
方法三:
如果你忘記了你的MYSQL的root口令的話,你可以通過下面的過程恢復。
1. 向mysqld server 發送kill命令關掉mysqld server(不是 kill -9),存放進程ID的文件通常在MYSQL的資料庫所在的目錄中。
kill `cat /mysql-data-directory/hostname.pid`
你必須是UNIX的root用戶或者是你所運行的SERVER上的同等用戶,才能執行這個操作。
2. 使用`--skip-grant-tables' 參數來啟動 mysqld。
3. 使用`mysql -h hostname mysql'命令登錄到mysqld server ,用grant命令改變口令。你也可以這樣做:`mysqladmin -h hostname -u user password 'new password''。
(其實也可以用use mysql; update user set password =password('yourpass') where user='root' 來做到。)
4. 載入許可權表: `mysqladmin -h hostname flush-privileges' ,或者使用 SQL 命令`FLUSH PRIVILEGES'。(當然,在這里,你也可以重啟mysqld。)
方法四:(一定要先備份)
1,重新在另一台電腦上安裝相同版本的MySQL
2,刪除忘記密碼的電腦中MySQL安裝目錄中\data\mysql的全部內容(要先停止MySQL服務)
3,Copy新裝的電腦上MySQL安裝目錄中\data\mysql的全部內容 to 剛剛刪除的目錄中
4,啟動MySQL服務
9、如何登錄mysql
使用管理員身份進入命令提示符(cmd),進入%MySQL_HOME%in 目錄下,
MySQL_HOME為自己的安裝路徑。
2. 啟動mysql資料庫 。DOS命令窗口中輸入 net start mysql
3.登陸資料庫。
方式一:
host並 user表示運行MySQL伺服器的主機名和MySQL帳戶的用戶名。替換適合您的設置的值。該 ********代表你的密碼;
當mysql顯示Enter password:提示時輸入它。
例子如:
localhost:表示本地;-u為資料庫用戶名,root是mysql默認用戶名;-p為密碼,
1)如果設置了密碼,可直接在-p後鏈接輸入,如:-p666;
2)用戶沒有設置密碼,顯示Enter password時,直接回車即可。
例如:mysql -hlocalhost -uroot -p666回車直接登陸。
方式二:
如果你在運行MySQL的同一台計算機上登錄,則可以省略主機,只需使用以下命令:
如:
4.可以輸入show databases;查看下資料庫;
5.成功連接後,QUIT(或q)【不區分大小寫】來隨時斷開連接mysql>:
6.關閉資料庫命令為net stop mysql。
(9)登錄mysql伺服器擴展資料:
MySQL是一個關系型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。MySQL 是最流行的關系型資料庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關系資料庫管理系統) 應用軟體。
MySQL是一種關系資料庫管理系統,關系資料庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度並提高了靈活性。
MySQL所使用的 SQL 語言是用於訪問資料庫的最常用標准化語言。MySQL 軟體採用了雙授權政策,分為社區版和商業版,由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇 MySQL 作為網站資料庫。
由於其社區版的性能卓越,搭配 PHP 和 Apache 可組成良好的開發環境。
參考資料:MySQL——網路
10、#2005 無法登錄 MySQL 伺服器
解決辦法是重新設置root用戶密碼,在Windows平台下操作步驟如下:
1、以系統管理員身份登錄到系統;
2、如果MySQL伺服器正在運行,停止它。
如果是作為Windows服務運行的伺服器,進入服務管理器:開始菜單->控制面板->管理工具->服務
如果伺服器不是作為服務而運行的,可能需要使用任務管理器來強制停止它。
3、創建1個文本文件,並將下述命令置於單一行中:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
用任意名稱保存該文件。在本例中,該文件為C:\mysql-init.txt。
4、進入DOS命令提示:開始菜單->運行-> cmd
假定你已將MySQL安裝到C:\mysql。如果你將MySQL安裝到了另一位置,請對下述命令進行相應的調整。
在DOS命令提示符下,執行命令:
C:\> C:\mysql\bin\mysqld-nt --init-file=C:\mysql-init.txt
在伺服器啟動時,執行由「--init-file」選項(作用:在啟動時從指定的文件中讀取SQL命令)命名的文件的內容,更改根用戶密碼。當伺服器成功啟動後,應刪除C:\mysql-init.txt。
5、停止MySQL伺服器,然後在正常模式下重啟它。如果以服務方式運行伺服器,應從Windows服務窗口啟動它。如果以手動方式啟動了伺服器,能夠像正常情形下一樣使用命令。
附:
其他方法
方法一:
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD(』newpassword』) where USER=』root』;
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <輸入新設的密碼newpassword>
mysql>
方法二:
直接使用/etc/mysql/debian.cnf文件中[client]節提供的用戶名和密碼:
# mysql -udebian-sys-maint -p
Enter password: <輸入[client]節的密碼>
mysql> UPDATE user SET Password=PASSWORD(』newpassword』) where USER=』root』;
mysql> FLUSH PRIVILEGES;
mysql> quit
# mysql -uroot -p
Enter password: <輸入新設的密碼newpassword>
mysql>
另一個方法
Windows:
1. 管理員登陸系統,停止mysql服務或者結束mysqld-nt進程
2. 進入命令行,來到mysql的安裝目錄.假設安裝目錄為 d:\mysql\ , CMD進入命令行
3. 運行 d:\mysql\bin\mysqld-nt --skip-grant-tables 啟動mysql,關閉許可權的檢查
4. 運行 d:\mysql\bin\mysqladmin -u root flush-privileges password "newpassword" 重設root密碼
5. 重新啟動mysql服務