Kata pengantar
Awkward: access denied for user 'root'@'localhost' using password yes
Terkadang, saat menghubungkan data MySQL, pesan kesalahan "access denied for user 'root'@'localhost' using password yes" akan dilaporkan. Jangan bingung saat Anda melihat kesalahan ini. Alasan kesalahannya adalah bahwa nama pengguna atau kata sandi yang diakses oleh database salah. Pada saat ini, umumnya dibagi menjadi dua situasi berikut, dan kita akan berbicara tentang solusinya.
1. Xinan MySQL belum menetapkan kata sandi. Dalam hal ini, Anda perlu menambahkan kata sandi. Bagaimana cara menambahkannya?
1. Gunakan pengguna root untuk masuk ke MySQL dengan kata sandi kosong
root mysql -u
2. Ubah Kata Sandi Pengguna Root:
mysql> perbarui nama basis data set kata sandi = kata sandi ('kata sandi baru') di mana user = 'root'mysql> hak istimewa flush; mysql> berhenti3. Restart MySQL dan Anda dapat masuk dengan kata sandi baru Anda.
2. Saya sudah lama tidak menggunakannya, lupakan kata sandi saya
1. Buka DOS dan masukkan direktori bin di bawah MySQL: I: D: /Development/MySQL-5.5.29-winx64/bin
2. Hentikan Layanan MySQL, Net Stop MySQL
3. Enter setelah d: /development/mysql-5.5.29-winx64/bin:
mysqld --defaults-file = "d: /development/mysql-5.5.29-winx64/bin/my.ini" --console --skip-tables-tables
4. Buka kembali jendela DOS dan masukkan setelah d: /development/mysql-5.5.29-winx64/bin: mysql -root -p
5. Prompt untuk memasukkan kata sandi, masukkan kata sandi setelah enter, dan masukkan mysql>
6. Masukkan di bawah mysql>:
mysql> perbarui nama basis data set kata sandi = kata sandi ('kata sandi baru') di mana user = 'root'mysql> hak istimewa flush; mysql> berhentiCatatan: Jika ada beberapa database, Anda dapat memperbaruinya beberapa kali.
Mengkonfigurasi MySQL Melalui File Properti
1. Cara umum untuk menghubungkan data
2. Konfigurasi dan Bacaan Properties
1. Konfigurasi File Users.Properties
jdbc.drivers = com.mysql.jdbc.driverjdbc.url = jdbc: mysql: // localhost: 3306/databaseNameJdbc.username = rootjdbc.password = Uppassword
2. Baca file atribut
(1) Buat objek Properties;
Properti properti = properti baru ();
Langkah ini juga dapat dilakukan: membuat kelas yang mewarisi properti dan mendapatkan objek dalam mode singleton.
(2) Gunakan metode getResourceAsstream () dari objek kelas untuk membaca file properti yang ditentukan ke dalam aliran input, dan menggunakan metode Load () di kelas Properties untuk membaca daftar properti (kunci/nilai pasangan) dari aliran input;
Private String Resource = "Users.Properties"; // Jika nama file konfigurasi adalah Users.PropertiesInputStream in = getClass (). GetResourCeAsstream (sumber daya); Properties.Load (IN);
(3) Saat menggunakan koneksi basis data, gunakan metode getProperty () di kelas Properties untuk mendapatkan nilai nilai melalui tombol, sehingga mewujudkan operasi koneksi database.
Driver string = props.getProperty ("jdbc.drivers"); string url = props.getProperty ("jdbc.url"); string username = props.getproperty ("jdbc.username"); string kata sandi = props.getproperty ("jdbc.password"); DriverManager.getConnection (url, nama pengguna, kata sandi);Kumpulan koneksi mysql
1. Mengapa menggunakan sumber data dan kumpulan koneksi
Aplikasi perlu sering terhubung ke database. Jika mereka terhubung ke database setiap kali mereka beroperasi dan kemudian menutupnya, kinerjanya pasti akan terbatas. Karena itu, Anda harus menemukan cara untuk menggunakan kembali koneksi database. Gunakan kumpulan koneksi untuk mencapai tujuan koneksi database multiplexing.
2. Konsep Koleksi Koneksi
Kumpulan koneksi digunakan untuk mengelola objek koneksi. Kumpulan koneksi dapat memperoleh koneksi dari sumber data. Mungkin ada beberapa objek koneksi basis data di kumpulan koneksi, yang dapat digunakan kembali. Ketika aplikasi perlu terhubung, itu berlaku untuk kumpulan koneksi. Jika ada koneksi gratis di kumpulan koneksi, itu akan ditugaskan ke aplikasi. Jika tidak, mungkin perlu menunggu dalam antrian menunggu.
3. Konfigurasi Pool Koneksi MySQL
1. Salin paket driver database dan paket JAR JSTL ke %catalina_home %/lib.
2. Ubah file %catalina_home %/conf/server.xml dan tambahkan di bawah node <host>:
<!-nama aplikasi nama proyek docbase harus akurat dan simbol harus diganti dengan &-!> <context path = "/appname" docbase = "appname/webroot" auth = "container"> <name name = "jdbc/mysqlds" scope = "sharable" type = "javax.sql.dacle/mysqlds" scope = "sharable" type = "javax.sql.datas url = "jdbc: mysql: // localhost: 3306/kqxt? useunicode = true & characterencoding = utf-8" driverclassname = "com.mysql.jdbc.driver" 100 "100" root "root" maxWait = "3000" maxidle = "100" root "root =" root "maxWait =" 3000 "Maxidle =" 100 "
3. Ubah Web.xml dan tambahkan konten berikut di bawah node <Epp>
<Seraya resource-ref> <crickip> Contoh MySQL DataSource </description> <res-ref-name> mysqlds </res-ref-name> <rese-type> javax.sql.datasource </res-pype> <RES-auth> wadah </res-auth> </resource-ref>
4. Dapatkan koneksi database dalam kode
// Pay attention to the imported package name import java.sql.Connection;import javax.naming.Context;import javax.naming.InitialContext;import javax.sql.DataSource;public class DBUtil {public static Connection getConnection() throws Exception { Context context = new InitialContext(); // Dapatkan sumber data DataSource ds = (DataSource) Context.lookup ("Java: comp/env/jdbc/mysqlds"); // Dapatkan koneksi koneksi database conn = ds.getConnection (); if (conn! = null &&! conn.isclosed ()) {return conn; } else {return null; }}}Meringkaskan
Di atas adalah seluruh konten artikel ini. Saya berharap konten artikel ini memiliki nilai referensi tertentu untuk studi atau pekerjaan semua orang. Jika Anda memiliki pertanyaan, Anda dapat meninggalkan pesan untuk berkomunikasi. Terima kasih atas dukungan Anda ke wulin.com.