導航:首頁 > 編程大全 > ubuntu無法連接mysql資料庫

ubuntu無法連接mysql資料庫

發布時間:2022-12-30 22:27:50

❶ ubuntu下mysql配置問題,無法使用資料庫。。。。

在連接mysql時沒有"-u"參數導致的
[root@vps ~]# mysql -hlocalhost -root -p
重新連接mysql加上-u參數一切正常
[root@vps ~]# mysql -hlocalhost -uroot -p

❷ 打不開ubuntu伺服器端的mysql,在線求解答

打不開ubuntu伺服器端的mysql,在線求解答
linux啟動/停止/重啟Mysql資料庫的方法
1、查看mysql版本
方法一:status;
方法二:select version();
2、Mysql啟動、停止、重啟常用命令
a、啟動方式
1、使用 service 啟動:
[root@localhost /]# service mysqld start (5.0版本是mysqld)
[root@szxdb etc]# service mysql start (5.5.7版本是mysql)

❸ mysql-front 無法遠程連接mysql資料庫

不允許遠程連接這個資料庫,你看下mysql埠是否打開,另外查看一下mysql是否允許遠程連接
幾個解決方案,自己看下
1.修改改mysql配置文件(/etc/mysql/my.cnf),注釋以下行:
#bind-address
=
127.0.0.1
2.重啟mysql資料庫,對於ubuntu系統,執行如下命令
sudo
/etc/init.d/mysql
restart
3.以root用戶登錄mysql後,執行如下命令:
grant
all
privileges
on
*.*
to
root@』允許登錄的遠程機器ip』
identified
by
密碼
或者
grant
all
privileges
on
*.*
to
'myuser'@'%'
identified
by
'mypassword'
with
grant
option;
如果你想允許用戶myuser從ip為168.160.12.50的主機連接到mysql伺服器,並使用mypassword作為密碼
grant
all
privileges
on
*.*
to
'myuser'@'168.160.12.50'
identified
by
'mypassword'
with
grant
option;

❹ Ubuntu下搭建discuz安裝環境無法連接mysql問題

1、檢查mysql資料庫防火牆和mysql賬戶
在mysql資料庫netstat -ntlp看3306是否開啟
iptables -nvL檢查防火牆
mysql -uroot -p123456 -Dmysql -e "select user,host from user;"
2、創建資料庫
mysql> create database discuz_db;
3、創建用戶:
mysql> CREATE USER 『user01』@』192.168.26.128』 IDENTIFIED BY 『123456』;」
或者
mysql> CREATE USER 『user01』@』%』 IDENTIFIED BY 『123456』;」
4、授權:
mysql>GRANT ALL ON discuz_db.* TO 『user01』@』192.168.26.128';」
或者
mysql>GRANT ALL ON discuz_db.* TO 『user01』@』%';」
mysql>flush privileges;

5、在apache伺服器telnet 192.168.26.130 3306,判斷埠能否訪問到
6、在apache伺服器測試mysql遠程登陸
mysql -h 192.168.26.130 -uroot -p123456 -P3306

❺ 怎麼連接ubuntu mysql

ubuntu上安裝mysql非常簡單只需要幾條命令就可以完成。
1. sudo apt-get install mysql-server

2. apt-get isntall mysql-client

3. sudo apt-get install libmysqlclient-dev

安裝過程中會提示設置密碼什麼的,注意設置了不要忘了,安裝完成之後可以使用如下命令來檢查是否安裝成功:

sudo netstat -tap | grep mysql

通過上述命令檢查之後,如果看到有mysql 的socket處於 listen 狀態則表示安裝成功。

登陸mysql資料庫可以通過如下命令:

mysql -u root -p

-u 表示選擇登陸的用戶名, -p 表示登陸的用戶密碼,上面命令輸入之後會提示輸入密碼,此時輸入密碼就可以登錄到mysql。

❻ 怎麼遠程登錄ubuntu下mysql資料庫

mysql error number 2003
Can't connect to MySQL server xxx.xxx.xxx.xxx (10061)
在ubuntu 9.04中默認安裝了mysql,默認只能本地訪問,google了一下:
採用
登錄到MySQL伺服器端,在mysql庫下執行
grant all on *.* to 'remote'@'172.16.21.39' identified by 'password';
即可
如果要設置為任何客戶端都可以以root連接的話,可以這么寫:
grant all on *.* to 'root'@'%' identifiied by 'root的密碼'
格式:grant select on 資料庫.* to 用戶名@登錄主機 identified by "密碼"
類似這用方法的整理如下:
1。 改表法。可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql後,更改 "mysql" 資料庫里的 "user" 表裡的 "host" 項,從"localhost"改稱"%"
mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;

2. 授權法。例如,你想myuser使用mypassword從任何主機連接到mysql伺服器的話。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql伺服器,並使用mypassword作為密碼
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
但問題仍沒有解決:
找到 命令 mysql> flush privileges //使修改生效
顯示影響了零行。
問題依然沒有解決,重新啟動mysql sudo /etc/init.d/mysql restart
還是不行。
從 http://www.blogjava.net/waterjava/archive/2008/04/27/196385.html
了解到mysql有本機綁定,找到問題所在。
編輯 /etc/mysql/my.cnf
# 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
將」bind-address = 127.0.0.1「注釋
sudo /etc/init.d/mysql restart重啟即可遠程訪問
問題解決

****************************************************************************************
root@kiki-desktop:/etc/apache2# apt-get install libapache2-mod-auth-mysql
apt-get install lighttpd
apt-get install openssl
root@kiki-desktop:/etc/apache2# apt-get install libapache2-mod-gnutls

$ mysql -u root -p
mysql> use authz_db;

mysql> CREATE TABLE users(
-> user_name CHAR(30) NOT NULL,
-> user_passwd CHAR(20) NOT NULL,
-> PRIMARY KEY (user_name)
-> );

mysql> GRANT SELECT
-> ON authz_db.users
-> TO authuser@localhost
-> IDENTIFIED BY 'Your Password Here';

mysql> flush privileges;

mysql> INSERT INTO users VALUES('test',ENCRYPT('TEST'));

root@kiki-desktop:/etc/apache2# chkconfig --level 35 mysqld on

---------------------------------
如果要設置為任何客戶端都可以以root連接的話,可以這么寫:
grant all on *.* to 'root'@'%' identifiied by 'root的密碼'

進入mysql,
grant all on *.* to 'root'@'%' identifiied by 'root的密碼'

root@kiki-desktop:/etc/mysql# vim /etc/mysql/my.cnf
編輯 /etc/mysql/my.cnf

# 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
將」bind-address = 127.0.0.1「注釋

root@kiki-desktop:/etc/mysql# /etc/init.d/mysql restar

❼ Ubuntu下Java程序如何連接MySQL資料庫

linux ubuntu下用C連MySQL接數據mysql資料庫的步驟如下:
1.安裝mysql-server,在Ubuntu10.04下安裝mysql-server-5.1,會自動安裝mysql-client_5.1
sudo apt-get install mysql-server-5.1
2.C APIs包含在mysqlclient庫文件中與MySQL的源代碼一塊發行,用於連接到資料庫和執行資料庫查詢,因此需要安裝libmysqlclient-dev
sudo apt-get install libmysqlclient-dev
假定已安裝成功,相關文件如下:
頭文件在/usr/include/mysql目錄下;
庫文件在/usr/lib/mysql和/usr/lib目錄下
3.啟動和關閉mysql
啟動mysql:sudo start mysql
關閉mysql:sudo stop mysql
使用ps aux |grep mysql 查看mysql啟動狀態
ps命令用於查看當前系統中運行的進程信息,命令格式:ps [選項]
常見參數:
-a 顯示系統中所有進程,包括其他用戶進程
-e 顯示所有進程信息
-f 顯示進程的所有信息
-l 顯示長格式顯示進程的信息
-r 只顯示正在運行的程序
-u 以用戶的格式顯示進程信息
-x 顯示所有終端上的進程信息
最常用的方法是ps aux,然後再利用一個管道符號導向到grep去查找特定的進程,然後再對特定的進程進行操作。例如前面使用的ps aux |grep mysql
4.鏈接庫時需要庫文件,有靜態庫文件,也有動態庫文件,也有名字相同的靜態庫文件和動態庫文件,如何區分:
.o,.a,.so,.lo,.la後綴文件含義
.o: 編譯的目標文件
.a: 靜態庫,其實就是把若干o文件打了個包
.so: 動態鏈接庫(共享庫)
.lo: 使用libtool編譯出的目標文件,其實就是在o文件中添加了一些信息
.la: 使用libtool編譯出的庫文件,其實是個文本文件,記錄同名動態庫和靜態庫的相關信息
la只有在用libtool編譯應用程序或庫時才用,即開發者只指明la文件,至於最終鏈接a還是so由libtool決定,不使用libtool的小程序用不上la。
5.連接MySql
a、連接到本機上的MYSQL:
首先打開終端窗口,再鍵入命令mysql -u root -p,回車後提示你輸密碼,如果剛安裝好MYSQL,超級用戶root是沒有密碼的,故直接回車即可進入
到MYSQL中了,MYSQL的提示符是:mysql>
b.修改密碼,格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼
例1:給root加個密碼ab12。首先打開終端窗口,然後鍵入以下命令:mysqladmin -uroot password ab12.(註:因為開始時root沒有密碼,所以-p舊密碼一項就可以省略了)。
例2:再將root的密碼改為djg345。 mysqladmin -uroot -pab12 password djg345 (注:u與root可以不用加空格,其它也一樣)。
c、退出MYSQL命令: exit
6.增加新用戶(注意:和上面不同,下面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)
格式:grant select on 資料庫.* to 用戶名@登錄主機 identified by "密碼"
例1、增加一個用戶test1密碼為abc,讓他可以在任何主機上登錄,並對所有資料庫有查詢、插入、修改、刪除的許可權。
首先用以root用戶連入MYSQL,然後鍵入以下命令:grant select,insert,update,delete privileges on *.* to "test1"@"%" Identified by "abc" with grant option; 但例1增加的用戶是十分危險的,
你想如某個人知道test1的密碼,那麼他就可以在internet上的任何一台電腦上登錄你的mysql資料庫並對你的數據可以為所欲為了,解決辦法見例2。
例2、增加一個用戶test2密碼為abc,讓他只可以在localhost上登錄,並可以對資料庫mydb進行查詢、插入、修改、刪除的操作(localhost指本地主機,即MYSQL資料庫所在的那台主機),
這樣用戶即使用知道test2的密碼,他也無法從internet上直接訪問資料庫,只能通過MYSQL主機上的web頁來訪問了。
grant select,insert,update,delete on mydb.* to test2@localhost identified by 「abc」;如果你不想test2有密碼,可再打一個命令將密碼消掉。
grant select,insert,update,delete on mydb.* to test2@localhost identified by 「」;
例3、遠程登錄:
a、默認情況下Mysql只允許本地登錄,所以需要修改配置文件將地址綁定給注釋掉:
vi /etc/mysql/my.cnf

# 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 <---注釋掉這一行就可以遠程登錄了

b、允許遠程登錄後,還應設置遠程登錄許可權:
mysql>grant all privileges on *.* to "root"@"%" identified by "123456" with grant option;
c、使修改生效:
mysql> flush privileges;
d、在另一台機器上遠程登錄(mysql所在機器地址:192.168.0.30):
mysql -h192.168.0.30 -uroot -p123456
e、如果仍不能登錄,就把遠程mysql關閉,之後重啟
sudo stop mysql
sudo start mysql
7.顯示命令:(註:下面來看看MYSQL中有關資料庫方面的操作。注意:必須首先登錄到MYSQL中,以下操作都是在MYSQL的提示符下進行的,而且每個命令以分號結束)。
a、顯示資料庫列表:show databases; 剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫進行操作。
b、顯示庫中的數據表:use mysql; show tables;
c、顯示數據表的結構:describe 表名;
d、建庫: create database 庫名;
e、建表: use 庫名; create table 表名 (欄位設定列表);
f、刪庫和刪表: drop database 庫名; drop table 表名;
g、將表中記錄清空:delete from 表名;
h、顯示表中的記錄:select * from 表名;

❽ ubuntu 16.04 外網一直無法連接mysql 什麼都設置了 還是沒用

ubuntu 16.04 外網一直無法連接mysql 什麼都設置了 還是沒用
安裝需要使用root賬號,如果不會設置root賬號的請參考Linux公社的其他文章。安裝mysql過程中,需要設置mysql的root賬號的密碼,不要忽略了。
sudo apt-get install mysql-server
apt isntall mysql-client
apt install libmysqlclient-dev

❾ ubuntu mysql 連接不上

你的root@localhost密碼輸對了嗎

❿ ubuntu linux 下使用Qt連接MySQL資料庫

Linux下完整的MySQL開發需要安裝伺服器端,如果安裝客戶端也沒什麼不好。直接在軟體中心搜mysql,把client和server選上。
環境說明:
ubuntu
10.04.2
QtSDK
(1.5G安裝包的那個)
mysql5.1
1.安裝MySQL
Linux下完整的MySQL開發需要安裝伺服器端,如果安裝客戶端也沒什麼不好。直接在軟體中心搜mysql,把client和server選上。
server在安裝時會提示為root用戶設置密碼,設一個好了。
我使用的是mysql5.1版本,用戶名密碼存儲在一個叫mysql的資料庫里,只有管理員級別才能看到。
如果直接在終端中輸入
mysql,可能會提示ERROR
1045
(28000),這是因為這時候你是以自己用戶名訪問資料庫,而目前資料庫中只有一個root用戶。沒關系,如果有必要,可以添加一個用戶進去:
mysql
-uroot
-p
--
以root用戶登錄
grant
usage
on
*.*
to
mmy@localhost;
--
授權名為mmy的用戶本地登錄,這里換成自己的用戶名就可以了
不過這時候直接mysql只有普通的許可權,創建資料庫、操作mysql都是不可以的,如果真有將其賦予管理員許可權的需要,可以自己查閱有關資料。
2.安裝Qt的MySQL驅動。
方法一:直接sudo
apt-get
install
libqt4-sql-mysql
,這是Qt4的mysql驅動,就不用自己費勁編譯了,不過可能會額外下載一些東西。

/usr/lib/qt4/plugins/sqldrivers/libqsqlmysql.so拷貝到你的QtSDK
sqldrivers目錄下,我當時是直接用普通許可權安裝,目錄為:~/QtSDK/Desktop/Qt/473/gcc/plugins/sqldrivers
方法二:其實你也可以sudo
apt-get
download
libqt4-sql-mysql,把包解壓縮,然後把裡面的so文件搜出來直接拷貝到那裡。
方法三:乖乖按照官方方法編譯,但是貌似可行性不大,因為新版本的QtSDK並沒有src目錄,默認也沒有mysql的驅動。
3.做個demo試一下
記得在pro文件中
QT
+=那裡加上sql,否則qmake是不會去找sql的相關部分的
復制代碼代碼如下:
#include
QtCore/QCoreApplication
#include
QSqlDatabase
#include
QDebug
int
main(int
argc,
char
*argv[])
{
QCoreApplication
a(argc,
argv);
QSqlDatabase
db=QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setDatabaseName("study");
db.setUserName("root");
db.setPassword("tyh");
if(!db.open()){
qDebug()
"Unable
to
open
database";
}else{
qDebug()
"Database
connection
established";
}
return
a.exec();
}
這里study這個資料庫之前我已經創建過了,如果連接成功,就會顯示Database
connection
established。
我是建立的控制台程序哈。
軟體教程小編推薦:
Linux安裝配置MariaDB資料庫全程詳解
Linux系統怎麼設置開機密碼?
Linux啟動菜單修改教程

閱讀全文

與ubuntu無法連接mysql資料庫相關的資料

熱點內容
惠州企業網站優化公司如何 瀏覽:155
iphone5鈴聲同步後找不到 瀏覽:245
蘋果手機同步通話記錄 瀏覽:877
win10聯想自帶ie卸載 瀏覽:309
linux將文件切換用戶歸屬 瀏覽:158
數據線pd20什麼意思 瀏覽:890
小米盒版本 瀏覽:582
iphone6更新到診斷 瀏覽:717
16年上線的外包app 瀏覽:234
男人團網站為什麼進不去了 瀏覽:122
數據填報在企業微信哪裡 瀏覽:365
linux清除安裝包 瀏覽:20
開源linux飛控 瀏覽:913
單片機語音播報程序 瀏覽:151
字體文件夾修復工具欄 瀏覽:683
淘寶數據復制軟體有哪些 瀏覽:319
編程SETBTR0什麼意思 瀏覽:571
javahttp多文件上傳 瀏覽:854
msi安裝程序被中斷 瀏覽:12
編程系統如何上傳圖片 瀏覽:642

友情鏈接